# TAIT AUTOMATION TESTING
### Test Scope
1. UI testing(**In progress**)
2. API testing(**To do**)
3. Performance testing(**To do**)
4. Security testing(**To do**)
### Tech Stack
- We are using the below stacks to convert manual testcase to automation testcase:
- Robot framework
- Selenium
- Python
- Repository and CI/CD pipeline, we are using Gitlab to store the automation code and build a pipeline process to run the testcase and show the report.
- Gitlab
- Docker
- Nginx
### Code Structure
![Uploading file..._8mn4i7uit]()
### Running Testcase
- Because portal have a lot of testcase so we need to run test suites parallel to save time. We separate portal as a module to help running parallel easily
- After all test cases run completed, we exports the result as HTLM and XML format
- We will combine the result into markdown file to show:
- How many testcases is run?
- What's environment information for running test case(OS, browser,...)?
- How many test case is passed/failed/skipped?
- If we have failed test cases, we will determine how many test case failed by auto and how many bug found
- We will show coverage of automation testcase with manual testcase
- Send an email attach the markdown file
### CI/CD
- Gitlab pipeline stages:
- **Lint**: Check python syntax and mark a score. If the score is less than 8, the stage will fail
- **Build**: Run the docker command to build an image
- **Test**: Run the image that built at stage "**Build**"
- **Deploy**: There's an optional stage. After those above stages are completed, we will have a docker image. If you want to run deploy stage, you can start the stage then the image will push into Nexus repository
- Manually:
- As we confirmed in above, we created a pipeline by using Gitlab to build the docker image and run the image. The user can go to CI/CD page then click "Run pipeline" to re-run all testcase
- Auto run:
- After new merge request are accepted and merged to main branch, the pipeline will be run automatically
- Schedule: The pipeline will start at the time we configured