{"id":24908498,"url":"https://github.com/herowzz/atm","last_synced_at":"2025-03-27T23:44:54.920Z","repository":{"id":45352170,"uuid":"239993145","full_name":"herowzz/atm","owner":"herowzz","description":"automation test lib base selenium, support web and winform case","archived":false,"fork":false,"pushed_at":"2022-01-04T16:38:03.000Z","size":20974,"stargazers_count":1,"open_issues_count":6,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-01T19:41:34.627Z","etag":null,"topics":["java","selenium","testcases","web-test","winform-test"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/herowzz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-12T11:10:18.000Z","updated_at":"2020-04-24T03:48:00.000Z","dependencies_parsed_at":"2022-08-31T12:40:26.237Z","dependency_job_id":null,"html_url":"https://github.com/herowzz/atm","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herowzz%2Fatm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herowzz%2Fatm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herowzz%2Fatm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herowzz%2Fatm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/herowzz","download_url":"https://codeload.github.com/herowzz/atm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245944062,"owners_count":20697948,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","selenium","testcases","web-test","winform-test"],"created_at":"2025-02-02T02:11:24.998Z","updated_at":"2025-03-27T23:44:54.900Z","avatar_url":"https://github.com/herowzz.png","language":"Java","readme":"# atm\r\n![jitpack](https://jitpack.io/v/herowzz/atm.svg) ![java](https://img.shields.io/badge/java-1.8.0%2B-green)\r\n\r\nautomation test management\r\n\r\n## Useage\r\nAdd the following dependency to your pom.xml:\r\n```xml\r\n\u003cdependency\u003e\r\n\t\u003cgroupId\u003ecom.github.herowzz\u003c/groupId\u003e\r\n\t\u003cartifactId\u003eatm\u003c/artifactId\u003e\r\n\t\u003cversion\u003ev0.1.2.RELEASE\u003c/version\u003e\r\n\u003c/dependency\u003e\r\n```  \r\n\r\nthe config.properties\r\n```\r\nproduct=WINFORM-TEST\r\nversion=1.0.0\r\nrunPath=C:\\\\WINDOWS\\\\system32\\\\notepad.exe\r\ndriverUrl=http://127.0.0.1:4723\r\noutputPath=F:\\\\temp\r\n```  \r\n- runPath: is the application you want to test, in the web test you can write the web app start url\r\n- driverUrl: in winform app test you must write the Windows Application Driver url in here\r\n- outputPath: output result file path\r\n\r\n\r\nthen you can run main class\r\n```java\r\n@Configuration(packages = \"com.github.herowzz.test.winform.useCase\", driverType = DriverType.WinForm)\r\npublic class TestStart {\r\n\r\n\tprivate static Logger log = LoggerFactory.getLogger(TestStart.class);\r\n\r\n\tpublic static void main(String[] args) throws Exception {\r\n\t\tlog.info(\"TestStart begin...\");\r\n\t\tTestApplication.run(TestStart.class);\r\n\t\tlog.info(\"TestStart finished...\");\r\n\t\tSystem.exit(1);\r\n\t}\r\n}\r\n```  \r\n\r\n----\r\n\r\n### Configuration\r\nAnnotation Configuration use packages and driverType param\r\n- packages: you write test use case must in this package for parent package\r\n- driverType: now support Web and Winform\r\n\r\n----\r\n\r\n### Test UseCase Class\r\nTest UseCase Class use TestModule, DriverInject, UseCase annotation\r\n```java\r\n@TestModule(name = \"login\", order = 1)\r\npublic class LoginModule {\r\n\r\n\tprivate static Logger log = LoggerFactory.getLogger(LoginModule.class);\r\n\r\n\t@DriverInject\r\n\tpublic WindowsDriver\u003cWindowsElement\u003e driver;\r\n\r\n\t@UseCase(name = \"test Version code\", order = 1)\r\n\tpublic CaseResult testVersion() {\r\n\t\tCaseResult result = new CaseResult();\r\n\t\tlog.info(\"driver=========================\" + driver);\r\n\t\tRemoteWebElement editInput = driver.findElementByClassName(\"Edit\");\r\n\t\teditInput.clear();\r\n\t\teditInput.sendKeys(\"This is some text\");\r\n\t\teditInput.sendKeys(Keys.ENTER);\r\n\t\teditInput.sendKeys(Keys.ENTER);\r\n\t\treturn result.ok();\r\n\t}\r\n}\r\n```  \r\n- TestModule: have name and order param\r\n- DriverInject: to inject the driver for selenium\r\n- UseCase: have name and order param\r\n\r\n### Run start\r\nFinally you run main class then system can execute the all case you write and export the result file\r\n\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherowzz%2Fatm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fherowzz%2Fatm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherowzz%2Fatm/lists"}