Я написал программу на Python / Selenium / OpenPyxl, которая берет данные из электронной таблицы, а затем вставляет их на веб-сайт. Это не формальное домашнее задание, я просто пытаюсь научить себя, используя некоторые упражнения, которые я нашел в Интернете (хотя в Java нет Python).
Я хочу написать unittest для проверки моего теста, но понимаю только базовые unittest, основанные на онлайн-исследованиях. Ищите руководство о том, как написать соответствующий юнит-тест для этого теста.
У меня есть один модуль - этот модуль имеет следующий
- A Для циклов Range, чтобы подсчитать, сколько строк учетных данных для входа в электронную таблицу (тест попытается выполнить все входы в систему независимо от того, успешны они или нет)
- Если условия, которые проверяют вход в систему, успешны
- Оператор Else для случая, когда вход не был успешным
- A Попробуйте / за исключением того, что будет активировано условием Else для закрытия оповещения о неудачном входе в систему и за исключением успешного входа в систему.
- OpenPyxl для заполнения каждой строки учетными данными, если тест пройден или не пройден
Насколько я понимаю, мне нужно
def setupClass (cls): для проверки каждой строки учетных данных из электронной таблицы
def tearDown (self): закрыть каждый тест для каждого ряда учетных данных
Мне нужно руководство по применению юнит-теста для условия If / Else
Руководство по применению условия Try / Except в unittest
Если бы вы могли вести меня, это было бы здорово. У меня проблемы с визуализацией
#loop through each row of spreadsheet and enter the username and password in login for each row
for r in range(2, rows+1):
username = spreadsheet.readData(path, "Sheet1", r, 1)
password = spreadsheet.readData(path, "Sheet1", r, 2)
login.enter_username(username)
login.enter_password(password)
login.click_login()
#If login if not successful then accept alert, if login is successful press back button to return to login page
try:
alert = driver.switch_to.alert
alert.accept()
except NoAlertPresentException:
driver.execute_script("window.history.go(-1)")
#If login is successful and goes to next page then pass test and populate spreadsheet. If login is not successful then update spreadsheet with fail result
if driver.current_url == "http://www.demo.guru99.com/V4/manager/Managerhomepage.php" :
print("test is passed")
spreadsheet.writeData(path, "Sheet1", r, 3, "test passed")
else:
print("test failed")
spreadsheet.writeData(path, "Sheet1", r, 3, "test failed")
#below is where i' looking for guideance.
Class Test_LoginTest(unittest.TestCase):
@classmethod
def setupClass(cls):
new_url = "http://www.demo.guru99.com/V4/manager/Managerhomepage.php"
def tearDown(self):
print('teardownClass')
def test_login_valid(self):
self.assertEqual()
Полагаю, мне нужно
asssertEqual, что успешный вход в систему переходит на следующую страницу
подтверждение неудачного входа в систему приводит к предупреждению
Нужно ли утверждать, что обновления таблиц Excel правильные? (я понятия не имею, как это будет сделано)
4. Мне нужно unittest, который пытается / кроме работ?