Skip to content

This project is the result of my study course at Test Automation University,

Notifications You must be signed in to change notification settings

AnneTereshchuk/tau-intro-to-pytest

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

tau-intro-to-pytest

This project is the result of my study course at Test Automation University, where I delved into the fundamentals of test automation using the pytest framework. The main objective was to gain proficiency in writing effective test cases and understanding the core concepts of pytest. The project focuses on building a test suite for a Python application, using pytest to create and execute test cases. The application consists of various functionalities, and each test case was designed to thoroughly validate the expected behavior of the system. Key Features of the Project:

Test Automation with pytest: The entire project is built around pytest, a popular and robust testing framework in the Python ecosystem. pytest provides a simple syntax and powerful features for writing and organizing test cases efficiently.

Test Case Structure: Each test case follows the Arrange-Act-Assert (AAA) pattern, ensuring clarity and maintainability. The "Arrange" phase sets up the test environment, the "Act" phase executes the test scenario, and the "Assert" phase verifies the expected outcomes.

Test Fixtures: The project utilizes pytest fixtures to manage the setup and teardown logic for test cases. Fixtures help ensure consistent test environments and avoid code duplication.

Parametrized Tests: To enhance test coverage, parametrized tests were used to test multiple input scenarios with different test data. This approach allows a single test case to be executed with various inputs.

Test Reporting: pytest generates detailed test reports, which provide insights into test results, including the number of tests passed, failed, skipped, and more. The project also leverages pytest-html to generate user-friendly HTML reports for better visualization of test outcomes.

Version Control with Git: The project is version-controlled using Git, enabling collaboration, change tracking, and easy management of code revisions.

Through this project, I have gained practical experience in writing structured and maintainable test code, improved my understanding of test automation principles, and enhanced my proficiency in using pytest for software testing.

Future Directions:

As I continue to progress in my test automation journey, I plan to expand this project further. This includes implementing more test scenarios, integrating additional testing frameworks, exploring test data management, and enhancing test coverage.

I am excited to further enhance my skills in test automation and contribute to building reliable, high-quality software through effective testing practices.