A trident to penetrate the test automation barrier! One stop test automation framework for all types of application with 3-pronged approach!
- Playwright with Pytest -> To Automate Web applications -> In Progress
- Allure report plugin -> DONE
- Screenshot of each validation step -> DONE
- Playwright default html report -> DONE
- Video recording of the execution -> DONE
- Parallel execution -> DONE
- Integration with CI -> DONE
- Segregation of pages and configured context -> DONE
- Integration with Github Actions -> DONE
- Publish Allure-Reports on Github Pages -> DONE
- Playwright with Pytest -> To Automate API -> TODO
- PyWinAuto with Pytest -> To Automate Desktop applications -> TODO
- Appium with Pytest -> To Automate Mobile applications -> TODO
Either you can run
python3 -m pip install -r requirements.txt
python3 -m playwright install
Or, if you know what you are doing, then run
python3 -m pip install pytest
python3 -m pip install pytest-xdist
python3 -m pip install allure-pytest
python3 -m pip install pytest-playwright
python -m pip install pytest-rerunfailures
python3 -m playwright install #For installing Chromium, Firefox and Webkit browsers
- For Windows install nvm from here
- Install node using nvm
nvm install <version>
nvm use <installed version>
npm install -g allure-commandline --save-dev
- If you find authentication error then
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
- Now allure serve command should work
- If you are getting JAVA_HOME not set error, then you need to install Java as well from here and set JAVA_HOME="C:\Program Files\Java\jdkxxx.xx.xx" in the environment variables.
In VSCode, there is no default option to create virtual environment in Python. So follow below steps to create one:
- Open Visual Studio Code in your project's folder.
- In the terminal:
# venv is your virtual environment name
# You can also use py -3 -m venv .venv
python -m venv venv
- After the virtual environment is generated, use the following command to activate the virtual environment
# venv is your virtual environment name
venv\scripts\activate
-
If you get error message after running above command, please do this:
- Change the execution policies by adding -ExecutionPolicy Bypass args. in vscode you will have to create a shell profile with these args by adding below in settings.json (ctrl + shift + p and type "settings.json")
"terminal.integrated.profiles.windows": { "PowerShell": { "source": "PowerShell", "icon": "terminal-powershell", "args": ["-ExecutionPolicy", "Bypass"] } }, "terminal.integrated.defaultProfile.windows": "PowerShell",
- Need to restart VS Code and the Terminal.
- Run:
# venv is your virtual environment name venv\scripts\activate
-
Then Python: Select Interpreter (via Ctrl + Shift + P)
-
And select the option (in my case towards the bottom)
-
Select --> Python 3.7 (venv) ./venv/Scripts/python.exe
source venv/bin/activate
pip freeze > requirements.txt
pip uninstall -r requirements.txt -y
deactivate
rm -r venv/
- Reinstall the Microsoft Visual C++ Here is the link for downloading Microsoft Visual C++.
- Restart the system
- Reinstall the venv & Python packages
- Install all the required packages and set up vscode as mentioned above
- Run:
pytest --alluredir=allure-results --headed --numprocesses auto
allure serve .\allure-results
- Install all the required packages and set up vscode as mentioned above
- Run:
docker build -t <nameoftheimage> .
docker run -it sanochuke/poseidonframework-docker-v1 pytest web/src/test/testcases/youtube
- Debugging using page.pause() & inspector
- https://shields.io/
- Cloud hosting on Vercel
- Install allure plugin for jenkins
- Add below code in the jenkins file:
stage('Generating Reports') {
steps {
script {
allure([
includePorperties: false,
jdk: '',
properties: [],
reportBuildPolicy: 'ALWAYS',
results: [[path: 'allure-results']]
])
}
}
}