如何设置测试以一对一地运行测试?硒蟒蛇

时间:2019-06-05 18:33:55

标签: python unit-testing selenium testcase

是否可以一对一地运行测试?当我运行我的代码时,两个测试会同时运行

from selenium import webdriver
import unittest
from selenium.webdriver.common.by import By

`from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
import time
from selenium.webdriver.support.ui import WebDriverWait
from SlackHome import SlackHome
from mailPage import MailPage
from SlackApp import SlackMain
class SlackTest(unittest.TestCase):`


`@classmethod
def setUpClass(self):
    self.driver = webdriver.Chrome('/Users/piotrkapczynski/PycharmProjects/teraz to bedzie dzialac/chromedriver')
    self.driver.get("https://slack.com/signin")
def test_logToSlack(self):
    driver = self.driver
    time.sleep(3)
    SlackH = SlackHome(driver)
    SlackH.sendDomain()
    SlackH.submitDomain()
    time.sleep(3)
    SlackH.loginInput()
    time.sleep(3)
    SlackH.passwordInput()
    SlackH.signIn()
    time.sleep(2)

def test_inviteUsers(self):
    driver = self.driver
    SlackA = SlackMain(driver)

    time.sleep(3)
    SlackA.inviteUser()
    SlackA.addNewUser('aaa')`

1 个答案:

答案 0 :(得分:1)

否,测试是独立运行的,因此您无法在不同测试之间保持状态。来自docs

  

创建了一个新的TestCase实例作为用于   执行每个单独的测试方法。因此setUp()tearDown()和   __init__()将在每次测试中被调用一次。

您可以做的是将test_logToSlack定义为普通方法(这样就没有前缀test的方法),然后从test_inviteUsers进行调用。

或者,如果您希望在测试用例的每个测试中都调用test_logToSlack中的代码,则可以将其代码放入setUp方法中。