如何从lin命令运行python代码时将配置文件作为输入读取

2024-09-29 01:36:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我在python中有多个测试类和一个basetest类。 测试类继承自basetest类。在

我想从命令行运行测试类,它需要一些输入参数,这些输入参数应该存储在配置文件中。这个配置文件可以作为命令行的输入提供。在

如何实现这一点,从命令行提供它,然后解析配置文件。我需要在basetest类中进行解析,因为这将用于所有的测试类。在

测试类:如果内容没有多大意义,可以忽略它们,因为它只是一个示例类

from selenium import webdriver
import unittest

class TestCase():

    def setUp(self):
        super().setUp()

    def test(self):
        baseUrl = "https://www.google.com"
        driver = webdriver.Firefox()
        driver.get(baseUrl)
        elementByXpath = driver.find_element_by_xpath("//input[@id='name']")

        if elementByXpath is not None:
            print("We found an element by XPATH")

if __name__ == '__main__':
    unittest.main(verbosity=2)
    result = unittest.TestResult()

基本测试用例:

^{pr2}$

将从命令行运行的文件将是测试类。 像这样: python测试用例.py--配置文件

我对python还很陌生,如果有任何帮助,我将不胜感激。在

我曾经使用Java和TestNG,在那里很容易。我们可以在testngxml文件本身中提供任何配置。在

我使用的是python的unittest,任何关于哪个框架比unittest更好的建议都会很好。在

这是一个GUI测试框架,我需要在不同的浏览器和平台上运行测试。在


Tags: 命令行importself参数bydef配置文件driver
1条回答
网友
1楼 · 发布于 2024-09-29 01:36:57

使用如下层次结构。在

`
|
|- TestModule
       |
       |- main.py (your entry point to the test)
       |- conf.ini
       |- parse_config.py

现在,在parse_config.py中,你在conf.ini上调用你的SafeConfigParser。将其路径作为字符串传递给配置解析器。在

实例化您在测试运行程序的设置(或在\u all hook之前)的parse_config文件中生成的类。在

^{pr2}$

希望你对要做的事情有个大致的了解

编辑

parse_conf.py

^{3}$

{cd5>你的

from parse_config import ParseConfig
...
...
ParseConfig().parse_cli()
ParseConfig().parse_file()
...
...

这样就可以解析多个配置文件名。在

现在把你的剧本叫做

python main.py -c conf.ini

相关问题 更多 >