【问题标题】:How can I set tests to run one by one in one tab? selenium python如何将测试设置为在一个选项卡中一一运行?硒蟒
【发布时间】:2019-06-05 18:33:55
【问题描述】:

是否可以在一个选项卡中逐个运行测试?当我运行我的代码时,两个测试同时运行

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')`

【问题讨论】:

    标签: python unit-testing selenium testcase


    【解决方案1】:

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

    一个新的 TestCase 实例被创建为一个独特的测试夹具,用于 执行每个单独的测试方法。因此setUp()tearDown()__init__() 每次测试都会调用一次。

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

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

    【讨论】:

      猜你喜欢
      • 2021-07-24
      • 1970-01-01
      • 2022-01-02
      • 1970-01-01
      • 2012-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多