我正在尝试使用Selenium进行一些应用程序测试,我需要它在填充表单而不是硬编码字符串时插入变量。 IE:
这是有效的name_element.send_keys("John Doe")
name_element.send_keys(username)
有谁知道我怎么能做到这一点?相当大的Python菜鸟,但广泛使用谷歌尝试找出。
答案 0 :(得分:2)
至少在一个案例中,我发现除非我第一次传递一个常规的空字符串,否则我无法将变量传递给send_keys:
inputElement.send_keys("")
inputElement.send_keys(my_text_variable)
它也可以作为列表:
inputElement.send_keys("", my_text_variable)
答案 1 :(得分:0)
我不明白......为什么不设置username =“John Doe”我无法弄清楚你想要做什么除此之外
username ="John Doe"
def some_function():
name_element.send_keys(username)
答案 2 :(得分:0)
您是否确定您的变量是字符串?
格雷格的答案将确保这一点。如果您不完全确定,可以尝试name_element.send_keys(str(username))
答案 3 :(得分:0)
试试这个。
username = r'John Doe' name_element.send_keys(username)
我能够在测试中传递字符串而不会将其完全抛出。
答案 4 :(得分:0)
我认为用户名可能是您正在使用的python库中的变量。尝试将其命名为Username1之类的东西,看看是否可行?