2016-11-23 2 views
0

これらの操作を自動化する方法 - サイクルまたは機能?(Python、Selenium WD)これらの操作を自動化するには、サイクルまたは機能ですか?

wd.find_element_by_link_text("Logotype").click() 
assert "Logotype" in wd.title 
wd.find_element_by_link_text("Catalog").click() 
assert "Catalog" in wd.title 
wd.find_element_by_link_text("Product Groups").click() 
assert "Product Groups" in wd.title 
wd.find_element_by_link_text("Option Groups").click() 
assert "Option Groups" in wd.title 
+0

pytestを使用していますか?テストコードは、リファクタリングするのではなく、質問のように明示的に記述すると、読みやすく便利なことがあります。同様のテストケースの長いシーケンスでは、pytestのparemetrizedテストを使用することができます。これにより、通常のforループで得られるエラーメッセージよりも役立つエラーメッセージが表示されます。 http://doc.pytest.org/en/latest/example/parametrize.html –

答えて

1

ループはforと同じように見えます。あなたが必要とするのは、文字列をリストに入れることだけです:

lst = ["Logotype", "Catalog", "Product Groups", "Option Groups"] 

for item in lst: 
    wd.find_element_by_link_text(item).click() 
    assert item in wd.title 
+0

迅速な返信ありがとう –

関連する問題