{ "version": "3.0.0", "type": "project", "project": { "name": "TodoMVC React", "environments": [ { "name": "mirror1", "urls": [ { "name": "Base", "url": "http://172.17.0.1:9999", "default": true } ], "variables": [], "default": false }, { "name": "mirror2", "urls": [ { "name": "Base", "url": "http://172.17.0.1:9999", "default": true } ], "variables": [], "default": false }, { "name": "Production", "urls": [ { "name": "Base", "url": "http://172.17.0.1:9999", "default": true } ], "variables": [], "default": true } ] }, "groups": [ { "name": "Default group", "symbols": [ { "description": "", "expectedResult": "", "hidden": false, "id": 1, "inputs": [], "name": "show completed", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_clickLinkByText", "value": "Completed", "node": { "selector": ".filters", "type": "CSS" } } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.823+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 2, "inputs": [ { "type": "input", "name": "text", "parameterType": "STRING" } ], "name": "delete todo", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_executeScript", "script": "var text = arguments[0].variables.text;\nvar item = localStorage.getItem('react-todos');\nif (item == null) return false;\nvar todos = JSON.parse(item);\nreturn todos.findIndex(t => t.title === text) > -1;", "async": false, "timeout": 10, "name": "created" } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "assertVariable", "name": "created", "value": "true", "regexp": false } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_moveMouse", "node": { "selector": "//label[contains(text(),'{{$text}}')]/..", "type": "XPATH" }, "offsetX": 0, "offsetY": 0 } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_waitForNode", "node": { "selector": "//label[contains(text(),'{{$text}}')]/../button", "type": "XPATH" }, "waitCriterion": "CLICKABLE", "maxWaitTime": 10 } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_click", "node": { "selector": "//label[contains(text(),'{{$text}}')]/../button", "type": "XPATH" }, "doubleClick": false } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.862+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 3, "inputs": [], "name": "clear completed", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_click", "node": { "selector": ".clear-completed", "type": "CSS" }, "doubleClick": false } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.884+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 4, "inputs": [], "name": "toggle completed all", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_click", "node": { "selector": "label[for=\"toggle-all\"]", "type": "CSS" }, "doubleClick": false } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.899+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 5, "inputs": [ { "type": "input", "name": "text", "parameterType": "STRING" } ], "name": "toggle completed", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_click", "node": { "selector": "//label[contains(text(),'{{$text}}')]/../input", "type": "XPATH" }, "doubleClick": false } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.917+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 6, "inputs": [], "name": "show active", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_clickLinkByText", "value": "Active", "node": { "selector": ".filters", "type": "CSS" } } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.939+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 7, "inputs": [], "name": "reset", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_goto", "url": "/", "baseUrl": "Base", "credentials": { "name": "", "password": "" } } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_waitForNode", "node": { "selector": ".new-todo", "type": "CSS" }, "waitCriterion": "CLICKABLE", "maxWaitTime": 10 } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.955+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 8, "inputs": [ { "type": "input", "name": "text", "parameterType": "STRING" } ], "name": "create todo", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_executeScript", "script": "var item = localStorage.getItem('react-todos');\nif (item == null) return false;\nvar todos = JSON.parse(item);\nreturn todos.findIndex(t => t.title === arguments[0].variables.text) > -1;", "async": false, "timeout": 10, "name": "created" } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "assertVariable", "name": "created", "value": "false", "regexp": false } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_clear", "node": { "selector": ".new-todo", "type": "CSS" } } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_fill", "node": { "selector": ".new-todo", "type": "CSS" }, "value": "{{$text}}" } }, { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_pressKey", "node": { "selector": ".new-todo", "type": "CSS" }, "key": "\\ue007" } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:54.970+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 9, "inputs": [], "name": "get visible todos", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "setVariableByNodeCount", "name": "count", "node": { "selector": ".todo-list li", "type": "CSS" } } } ], "successOutput": "{{$count}}", "updatedOn": "2023-03-17T13:14:54.987+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 10, "inputs": [], "name": "get todos left", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "setVariableByHTML", "name": "count", "node": { "selector": ".todo-count > strong", "type": "CSS" } } } ], "successOutput": "{{$count}}", "updatedOn": "2023-03-17T13:14:55.000+00:00" }, { "description": "", "expectedResult": "", "hidden": false, "id": 11, "inputs": [], "name": "show all", "outputs": [], "steps": [ { "type": "action", "disabled": false, "ignoreFailure": false, "negated": false, "errorOutput": null, "action": { "type": "web_clickLinkByText", "value": "All", "node": { "selector": ".filters", "type": "CSS" } } } ], "successOutput": null, "updatedOn": "2023-03-17T13:14:55.011+00:00" } ], "groups": [] } ], "tests": [ { "id": 2, "name": "create and delete todo", "preSteps": [], "steps": [ { "disabled": false, "expectedResult": "", "expectedOutputSuccess": true, "expectedOutputMessage": "", "pSymbol": { "parameterValues": [], "symbol": { "id": 7 } } }, { "disabled": false, "expectedResult": "", "expectedOutputSuccess": true, "expectedOutputMessage": "", "pSymbol": { "parameterValues": [ { "parameter": { "type": "input", "name": "text", "parameterType": "STRING" }, "value": "apples" } ], "symbol": { "id": 8 } } }, { "disabled": false, "expectedResult": "", "expectedOutputSuccess": true, "expectedOutputMessage": "", "pSymbol": { "parameterValues": [ { "parameter": { "type": "input", "name": "text", "parameterType": "STRING" }, "value": "apples" } ], "symbol": { "id": 2 } } } ], "postSteps": [], "generated": false, "status": "DONE", "updatedOn": "2023-03-17T13:19:17.152+00:00", "type": "case" } ], "formulaSuites": [], "learnerSetups": [ { "name": "setup with one todo item", "enableCache": true, "saved": true, "algorithm": { "name": "TTT" }, "environments": [ { "name": "Production", "urls": [ { "name": "Base", "url": "http://172.17.0.1:9999", "default": true } ], "variables": [], "default": true } ], "symbols": [ { "parameterValues": [ { "parameter": { "type": "input", "name": "text", "parameterType": "STRING" }, "value": "bananas" } ], "symbol": { "id": 8 } }, { "parameterValues": [], "symbol": { "id": 9 } }, { "parameterValues": [], "symbol": { "id": 10 } }, { "parameterValues": [], "symbol": { "id": 11 } }, { "parameterValues": [], "symbol": { "id": 6 } }, { "parameterValues": [], "symbol": { "id": 1 } }, { "parameterValues": [ { "parameter": { "type": "input", "name": "text", "parameterType": "STRING" }, "value": "bananas" } ], "symbol": { "id": 2 } }, { "parameterValues": [], "symbol": { "id": 3 } }, { "parameterValues": [], "symbol": { "id": 4 } }, { "parameterValues": [ { "parameter": { "type": "input", "name": "text", "parameterType": "STRING" }, "value": "bananas" } ], "symbol": { "id": 5 } } ], "preSymbol": { "parameterValues": [], "symbol": { "id": 7 } }, "postSymbol": null, "equivalenceOracle": { "type": "random_word", "batchSize": 1, "minLength": 60, "maxLength": 60, "seed": 42, "maxNoOfTests": 60 }, "webDriver": { "width": 1920, "height": 1080, "implicitlyWait": 0, "pageLoadTimeout": 10, "scriptTimeout": 10, "platform": "ANY", "browser": "chrome", "version": "" }, "modelCheckingConfig": { "formulaSuites": [], "minUnfolds": 1, "multiplier": 0.1 } } ], "testExecutionConfigs": [] }