Я пытаюсь получить зависание как Python, так и Selenium RC, и мне трудно получить следующий образец Selenium Python Script для синтаксического анализа. Я устранил все следующие ошибки кода, кроме одного:
from selenium import selenium
import unittest
class SignUpTask(unittest.TestCase):
""" The following needs to have the issues corrected to make
it run. When the run is completed the answer for question
2 will be shown"""
def setUp(self):
self.selenium = selenium("localhost", 4444, "*firefox",
"http://www.google.com/")
self.selenium.start()
def test_that_will_print_out_a_url_as_answer_for_task(sel):
self.selenium.open("/")
self.selenium.click("link=Web QA")
self.selenium.wait_for_page_to_load("30000")
self.selenium.click("link=Get Involved")
self.selenium.wait_for_page_to_load("30000")
url = self.selenium.get_attribute("//ol/li[5]/a@href")
print """The Url below needs to be entered as the answer
for Question 2) in the signup task"""
print "URL is: %s" % url
def tearDown(self):
self.selenium.stop()
if __name__ == "__main__":
unittest.main()
После запуска вышеуказанного Script через Selenium RC я получаю следующую ошибку:
ОШИБКА: test_that_will_print_out_a_url_as_answer_for_task ( main.SignUpTask) Traceback (последний последний вызов): Файл "/Users/eanderson/Desktop/TestFiles/Selenium1.py", строка 16, в test_that_will_print_out_a_url_as_answer_for_task self.selenium.open( "/" ) NameError: глобальное имя "self" не определено
Ran 1 тест в 24.577s
не удалось (ошибки = 1)
Кто-нибудь знает, почему я получаю
NameError: глобальное имя "self" не определено
в строке 16 и может помочь мне облегчить эту ошибку, чтобы мой Script мог анализировать без ошибок?
def test_that_will_print_out_a_url_as_answer_for_task(
Сель ):
Это должно быть self
.
Первым шагом в отладке такой проблемы является принятие сообщения об ошибке, говорящего правду. Посмотрите на это буквально. В нем говорится: "Я не определен". Так спросите себя, почему это не определено?. Для этого действительно может быть только несколько причин: либо вы действительно не определили его, либо думаете, что определили его, но не сделали (что означает опечатку или вы определили ее в неправильном объеме)
Итак, где определяется "я"? В случае с python он передается в качестве аргумента. Итак, посмотрите список аргументов для этой функции. Когда вы это сделаете, вы заметите, что вы пишете self
как sel
.
Не может быть "sel" отсутствует f?
def test_that_will_print_out_a_url_as_answer_for_task(sel):