从另一个 python 文件执行一个硒测试用例



我正在尝试从python文件执行硒测试用例。我知道可以使用python的子进程模块来完成 - 但我想探索调用测试用例函数的可能性。

这是我的代码

chrome_settings_test.py

from selenium import w ebdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import unittest, time, re
import os, shutil, sys
from selenium.webdriver.chrome.options import Options
from selenium import webdriver
class SeleniumException(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Chrome()
        self.driver.implicitly_wait(30)

    #self.driver = nested_selenium.driver
        self.base_url = "https://www.google.co.in/"
        self.verificationErrors = []
    def test_selenium_exception(self):
        driver = self.driver
        driver.get(self.base_url + "/")
        driver.find_element_by_id("gbqfq").clear()
        driver.find_element_by_id("gbqfq").send_keys("Check this out")
    def is_element_present(self, how, what):
        try: self.driver.find_element(by=how, value=what)
        except NoSuchElementException, e: return False
        return True
    def tearDown(self):
        self.driver.quit()
        self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
    unittest.main()

selenium_fnexec.py

import chrome_settings_test
print "going to call"
chrome_settings_test.unittest.main() #or
#chrome_settings_test.unittest.setUp()

这做到了

import chrome_settings_test
import unittest
unittest.main(module=chrome_settings_test)

感谢桑蒂克尔 https://gist.github.com/4274570

如果您希望能够直接调用SeleniumException类的方法,则可以实例化该类。

import chrome_settings_test
print "going to call"
my_test = chrome_settings_test.SeleniumException()
my_test.setUp()

最新更新