Python 板


LINE

我現在用python去讀大量的對應變數來跑selenium頁面測試.每個頁面的element都有對應的字串, 我想用python 的Enum去建一個檔大概像下面一樣. file: ElementEnum.py from enum import Enum class PageA(Enum): pageAelementA = '//div[{}]/a' pageAelementB = '//button[.="{}"]' pageAelementC = '//tr[{}]/td[{}]' class PageC(Enum): pageBelementA = '//div[{}]/a' pageBelementB = '//button[.="{}"]' pageBelementC = '//tr[{}]/td[{}]' class PageB(Enum): pageCelementA = '//div[{}]/a' pageCelementB = '//button[.="{}"]' pageCelementC = '//tr[{}]/td[{}]' 但之後在用後, 發現常常需要用format去建完整的字串變成可讀的xpath或是css selector字串.想請問大家有沒有比較好的建議, 因為當我在建locator有很多需要format的地方會看起來很雜亂 import ElementEnum.PageA as PA driver.find_element_by_xpath('{}//table/thead[{}]'.format(PA.pageAelementA.value, 1)) func(index, **kwargs): driver.find_element_by_xpath('//table/thead[{}]/tr[{}]/td[{}]/{}'.format(index, kwargs['row'], kwargs['col'], PA.pageBelementA.value)) --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 108.14.0.213
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1493864315.A.4A6.html
1F:推 ides13: 將所有的format編寫成字典,然後用key調用?Dpath[key]. 05/04 11:38
2F:→ jacobcan118: 不過我很多需要format的時候都是變數在跑降可以編成 05/04 19:40
3F:→ jacobcan118: 字典嗎 05/04 19:40
4F:推 ides13: 我不確定,但將format編成字典是cookbook中的例子內的作法 05/04 21:48
5F:推 ides13: http://tinyurl.com/kuaou94。指定變數字符串。 05/04 22:00
6F:→ jacobcan118: 我已經在字符串中插入變量了. 但是還是會有很多情形 05/05 11:38
7F:→ jacobcan118: 像是我想要找在pageA裡elemetnA下的elementB會變成 05/05 11:39
8F:→ jacobcan118: locator = '{}/{}'.format(PageA.pageAelementA.valu 05/05 11:40
9F:→ jacobcan118: e.format(xxx), PageA.pageAelementB.value.format(x 05/05 11:41
10F:→ zerof: 如果都是用 Enum.value 的話改用 namedtuple 會比較好 05/05 11:53
11F:→ zerof: sample code: https://repl.it/Hhja/1 05/05 12:32
12F:→ jacobcan118: 感謝 學了一下namedtuple 如果我每一個class 只給值 05/11 07:28
13F:→ jacobcan118: 一次 有人降用嗎 05/11 07:28
14F:→ zerof: 跟你用 Enum 的概念是一樣的吧...... 05/11 10:55
15F:推 ides13: https://youtu.be/mWB3oh1GPdo?t=191 05/11 18:03
16F:→ ides13: Avoid overengineering datastructures. 05/11 18:04
17F:→ ides13: Tuples are better than objects (try namdtuple too 05/11 18:05
18F:→ ides13: too though).Prefer simple fields over getter/setter fn 05/11 18:06







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Boy-Girl站內搜尋

TOP