Chr*_*G29 5 python selenium pytest
我正在使用Pytest(Selenium)来执行我的功能测试.我将测试拆分为以下结构中的2个文件:
My_Positive_Tests.py
class Positive_tests:
def test_pos_1():
populate_page()
check_values()
def test_pos_2():
process_entry()
validate_result()
Run Code Online (Sandbox Code Playgroud)
My_Negative_Tests.py
class Negative_tests:
def test_neg_1
populate_page()
validate_error()
Run Code Online (Sandbox Code Playgroud)
断言在函数内完成(check_values,validate_result,validate_error).我正在尝试从单个文件中找到运行所有测试的方法,以便主测试文件看起来像:
My_Test_Suite.py
test_pos_1()
test_pos_2()
test_neg_1()
Run Code Online (Sandbox Code Playgroud)
然后从命令行我将执行:
py.test --tb=short "C:\PycharmProjects\My_Project\MyTest_Suite.py" --html=report.html
Run Code Online (Sandbox Code Playgroud)
可以这样做吗?我一直在寻找并且无法找到如何将调用这些测试放在一个文件中.
test_或 . 结尾_test.py。课程应该开始于Test目录示例:
|-- 文件
|--|-- stuff_in stuff
|--|--|-- blah.py
|--|-- example.py
|
|-- 测试
|--|-- stuff_in stuff
|--|--|-- test_blah.py
|--|-- test_example.py
在终端中:$ py.test --cov=files/ tests/或者只是$ py.test tests/如果您不需要代码覆盖率。测试目录文件路径必须位于您当前的目录路径中。或者当然是确切的文件路径
使用上面的终端命令( ),pytest将在tests/$ py.test tests/目录中搜索所有以.开头的文件。文件也是如此。test_
测试示例.py
# imports here
def test_try_this():
assert 1 == 1
# or
class TestThis:
assert 1 == 0
# or even:
def what_test():
assert True
Run Code Online (Sandbox Code Playgroud)
您不必手动运行测试.Pytest自动查找并执行它们:
# tests/test_positive.py
def test_pos_1():
populate_page()
check_values()
def test_pos_2():
process_entry()
validate_result()
Run Code Online (Sandbox Code Playgroud)
和
# tests/test_negative.py
def test_neg_1():
populate_page()
validate_error()
Run Code Online (Sandbox Code Playgroud)
如果你然后运行
py.test
Run Code Online (Sandbox Code Playgroud)
它们应该被自动拾取.
然后,您还可以选择单个文件
py.test -k tests/test_negative.py
Run Code Online (Sandbox Code Playgroud)
或单次测试
py.test -k test_neg_1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8709 次 |
| 最近记录: |