@@ -45,6 +45,20 @@ def get_parent_classes_list():
45
45
parent_classes .append ("CasoDePrueba" )
46
46
return parent_classes
47
47
48
+ def get_masterqa_parent_classes_list ():
49
+ parent_classes = []
50
+ parent_classes .append ("MasterQA" )
51
+ parent_classes .append ("MasterQA_中文" )
52
+ parent_classes .append ("MasterQA_Nederlands" )
53
+ parent_classes .append ("MasterQA_Français" )
54
+ parent_classes .append ("MasterQA_Italiano" )
55
+ parent_classes .append ("MasterQA_日本語" )
56
+ parent_classes .append ("MasterQA_한국어" )
57
+ parent_classes .append ("MasterQA_Português" )
58
+ parent_classes .append ("MasterQA_Русский" )
59
+ parent_classes .append ("MasterQA_Español" )
60
+ return parent_classes
61
+
48
62
def get_parent_class_lang (parent_class ):
49
63
parent_class_lang = {}
50
64
parent_class_lang ["BaseCase" ] = "English"
@@ -62,6 +76,23 @@ def get_parent_class_lang(parent_class):
62
76
"" % (parent_class , parent_class_lang .keys ()))
63
77
return parent_class_lang [parent_class ]
64
78
79
+ def get_mqa_par_class_lang (parent_class ):
80
+ parent_class_lang = {}
81
+ parent_class_lang ["MasterQA" ] = "English"
82
+ parent_class_lang ["MasterQA_中文" ] = "Chinese"
83
+ parent_class_lang ["MasterQA_Nederlands" ] = "Dutch"
84
+ parent_class_lang ["MasterQA_Français" ] = "French"
85
+ parent_class_lang ["MasterQA_Italiano" ] = "Italian"
86
+ parent_class_lang ["MasterQA_日本語" ] = "Japanese"
87
+ parent_class_lang ["MasterQA_한국어" ] = "Korean"
88
+ parent_class_lang ["MasterQA_Português" ] = "Portuguese"
89
+ parent_class_lang ["MasterQA_Русский" ] = "Russian"
90
+ parent_class_lang ["MasterQA_Español" ] = "Spanish"
91
+ if parent_class not in parent_class_lang .keys ():
92
+ raise Exception ("Invalid parent_class {%s} not in {%s}!"
93
+ "" % (parent_class , parent_class_lang .keys ()))
94
+ return parent_class_lang [parent_class ]
95
+
65
96
def get_lang_parent_class (language ):
66
97
lang_parent_class = {}
67
98
lang_parent_class ["English" ] = "BaseCase"
@@ -79,6 +110,23 @@ def get_lang_parent_class(language):
79
110
"" % (language , lang_parent_class .keys ()))
80
111
return lang_parent_class [language ]
81
112
113
+ def get_mqa_lang_par_class (language ):
114
+ lang_parent_class = {}
115
+ lang_parent_class ["English" ] = "MasterQA"
116
+ lang_parent_class ["Chinese" ] = "MasterQA_中文"
117
+ lang_parent_class ["Dutch" ] = "MasterQA_Nederlands"
118
+ lang_parent_class ["French" ] = "MasterQA_Français"
119
+ lang_parent_class ["Italian" ] = "MasterQA_Italiano"
120
+ lang_parent_class ["Japanese" ] = "MasterQA_日本語"
121
+ lang_parent_class ["Korean" ] = "MasterQA_한국어"
122
+ lang_parent_class ["Portuguese" ] = "MasterQA_Português"
123
+ lang_parent_class ["Russian" ] = "MasterQA_Русский"
124
+ lang_parent_class ["Spanish" ] = "MasterQA_Español"
125
+ if language not in lang_parent_class .keys ():
126
+ raise Exception ("Invalid language {%s} not in {%s}!"
127
+ "" % (language , lang_parent_class .keys ()))
128
+ return lang_parent_class [language ]
129
+
82
130
def get_import_line (language ):
83
131
import_line = {}
84
132
# - The Default Import Line:
@@ -108,6 +156,35 @@ def get_import_line(language):
108
156
"" % (language , import_line .keys ()))
109
157
return import_line [language ]
110
158
159
+ def get_mqa_im_line (language ):
160
+ import_line = {}
161
+ # - The Default Import Line:
162
+ import_line ["English" ] = (
163
+ "from seleniumbase import MasterQA" )
164
+ # - Translated Import Lines:
165
+ import_line ["Chinese" ] = (
166
+ "from seleniumbase.translate.chinese import MasterQA_中文" )
167
+ import_line ["Dutch" ] = (
168
+ "from seleniumbase.translate.dutch import MasterQA_Nederlands" )
169
+ import_line ["French" ] = (
170
+ "from seleniumbase.translate.french import MasterQA_Français" )
171
+ import_line ["Italian" ] = (
172
+ "from seleniumbase.translate.italian import MasterQA_Italiano" )
173
+ import_line ["Japanese" ] = (
174
+ "from seleniumbase.translate.japanese import MasterQA_日本語" )
175
+ import_line ["Korean" ] = (
176
+ "from seleniumbase.translate.korean import MasterQA_한국어" )
177
+ import_line ["Portuguese" ] = (
178
+ "from seleniumbase.translate.portuguese import MasterQA_Português" )
179
+ import_line ["Russian" ] = (
180
+ "from seleniumbase.translate.russian import MasterQA_Русский" )
181
+ import_line ["Spanish" ] = (
182
+ "from seleniumbase.translate.spanish import MasterQA_Español" )
183
+ if language not in import_line .keys ():
184
+ raise Exception ("Invalid language {%s} not in {%s}!"
185
+ "" % (language , import_line .keys ()))
186
+ return import_line [language ]
187
+
111
188
def get_locale_code (language ):
112
189
locale_codes = {}
113
190
locale_codes ["English" ] = "en"
@@ -196,6 +273,18 @@ class MD:
196
273
md ["update_text" ][8 ] = "обновить_текст"
197
274
md ["update_text" ][9 ] = "actualizar_texto"
198
275
276
+ md ["assert_element" ] = ["*" ] * num_langs
277
+ md ["assert_element" ][0 ] = "assert_element"
278
+ md ["assert_element" ][1 ] = "断言元素"
279
+ md ["assert_element" ][2 ] = "controleren_element"
280
+ md ["assert_element" ][3 ] = "vérifier_un_élément"
281
+ md ["assert_element" ][4 ] = "verificare_elemento"
282
+ md ["assert_element" ][5 ] = "要素を確認する"
283
+ md ["assert_element" ][6 ] = "요소_확인"
284
+ md ["assert_element" ][7 ] = "verificar_elemento"
285
+ md ["assert_element" ][8 ] = "подтвердить_элемент"
286
+ md ["assert_element" ][9 ] = "verificar_elemento"
287
+
199
288
md ["assert_text" ] = ["*" ] * num_langs
200
289
md ["assert_text" ][0 ] = "assert_text"
201
290
md ["assert_text" ][1 ] = "断言文本"
@@ -207,3 +296,173 @@ class MD:
207
296
md ["assert_text" ][7 ] = "verificar_texto"
208
297
md ["assert_text" ][8 ] = "подтвердить_текст"
209
298
md ["assert_text" ][9 ] = "verificar_texto"
299
+
300
+ md ["assert_exact_text" ] = ["*" ] * num_langs
301
+ md ["assert_exact_text" ][0 ] = "assert_exact_text"
302
+ md ["assert_exact_text" ][1 ] = "确切断言文本"
303
+ md ["assert_exact_text" ][2 ] = "controleren_exacte_tekst"
304
+ md ["assert_exact_text" ][3 ] = "vérifier_exactement_le_texte"
305
+ md ["assert_exact_text" ][4 ] = "verificare_il_testo_esatto"
306
+ md ["assert_exact_text" ][5 ] = "正確なテキストを確認する"
307
+ md ["assert_exact_text" ][6 ] = "정확한_텍스트를_확인하는"
308
+ md ["assert_exact_text" ][7 ] = "verificar_texto_exato"
309
+ md ["assert_exact_text" ][8 ] = "подтвердить_текст_точно"
310
+ md ["assert_exact_text" ][9 ] = "verificar_texto_exacto"
311
+
312
+ md ["get_text" ] = ["*" ] * num_langs
313
+ md ["get_text" ][0 ] = "get_text"
314
+ md ["get_text" ][1 ] = "获取文本"
315
+ md ["get_text" ][2 ] = "ontvang_tekst"
316
+ md ["get_text" ][3 ] = "obtenir_du_texte"
317
+ md ["get_text" ][4 ] = "ottenere_il_testo"
318
+ md ["get_text" ][5 ] = "テキストを取得"
319
+ md ["get_text" ][6 ] = "텍스트를_검색"
320
+ md ["get_text" ][7 ] = "obter_texto"
321
+ md ["get_text" ][8 ] = "получить_текст"
322
+ md ["get_text" ][9 ] = "obtener_texto"
323
+
324
+ md ["click_link_text" ] = ["*" ] * num_langs
325
+ md ["click_link_text" ][0 ] = "click_link_text"
326
+ md ["click_link_text" ][1 ] = "单击链接文本"
327
+ md ["click_link_text" ][2 ] = "klik_linktekst"
328
+ md ["click_link_text" ][3 ] = "cliquez_sur_le_texte_du_lien"
329
+ md ["click_link_text" ][4 ] = "fare_clic_sul_testo_del_collegamento"
330
+ md ["click_link_text" ][5 ] = "リンクテキストをクリックします"
331
+ md ["click_link_text" ][6 ] = "링크_텍스트를_클릭합니다"
332
+ md ["click_link_text" ][7 ] = "clique_no_texto_do_link"
333
+ md ["click_link_text" ][8 ] = "нажмите_на_ссылку"
334
+ md ["click_link_text" ][9 ] = "haga_clic_en_el_texto_del_enlace"
335
+
336
+ md ["assert_link_text" ] = ["*" ] * num_langs
337
+ md ["assert_link_text" ][0 ] = "assert_link_text"
338
+ md ["assert_link_text" ][1 ] = "断言链接文本"
339
+ md ["assert_link_text" ][2 ] = "controleren_linktekst"
340
+ md ["assert_link_text" ][3 ] = "vérifier_le_texte_du_lien"
341
+ md ["assert_link_text" ][4 ] = "verificare_testo_del_collegamento"
342
+ md ["assert_link_text" ][5 ] = "リンクテキストを確認する"
343
+ md ["assert_link_text" ][6 ] = "링크_텍스트_확인"
344
+ md ["assert_link_text" ][7 ] = "verificar_texto_do_link"
345
+ md ["assert_link_text" ][8 ] = "подтвердить_ссылку"
346
+ md ["assert_link_text" ][9 ] = "verificar_texto_del_enlace"
347
+
348
+ md ["assert_title" ] = ["*" ] * num_langs
349
+ md ["assert_title" ][0 ] = "assert_title"
350
+ md ["assert_title" ][1 ] = "断言标题"
351
+ md ["assert_title" ][2 ] = "controleren_titel"
352
+ md ["assert_title" ][3 ] = "vérifier_le_titre"
353
+ md ["assert_title" ][4 ] = "verificare_il_titolo"
354
+ md ["assert_title" ][5 ] = "タイトルを確認"
355
+ md ["assert_title" ][6 ] = "제목_확인"
356
+ md ["assert_title" ][7 ] = "verificar_título"
357
+ md ["assert_title" ][8 ] = "подтвердить_название"
358
+ md ["assert_title" ][9 ] = "verificar_título"
359
+
360
+ md ["assert_true" ] = ["*" ] * num_langs
361
+ md ["assert_true" ][0 ] = "assert_true"
362
+ md ["assert_true" ][1 ] = "断言为真"
363
+ md ["assert_true" ][2 ] = "controleren_ware"
364
+ md ["assert_true" ][3 ] = "vérifier_la_vérité"
365
+ md ["assert_true" ][4 ] = "verificare_correttezza"
366
+ md ["assert_true" ][5 ] = "検証が正しい"
367
+ md ["assert_true" ][6 ] = "올바른지_확인"
368
+ md ["assert_true" ][7 ] = "verificar_verdade"
369
+ md ["assert_true" ][8 ] = "подтвердить_правду"
370
+ md ["assert_true" ][9 ] = "verificar_verdad"
371
+
372
+ md ["assert_false" ] = ["*" ] * num_langs
373
+ md ["assert_false" ][0 ] = "assert_false"
374
+ md ["assert_false" ][1 ] = "断言为假"
375
+ md ["assert_false" ][2 ] = "controleren_valse"
376
+ md ["assert_false" ][3 ] = "vérifier_le_mensonge"
377
+ md ["assert_false" ][4 ] = "verificare_falso"
378
+ md ["assert_false" ][5 ] = "検証は偽です"
379
+ md ["assert_false" ][6 ] = "거짓인지_확인"
380
+ md ["assert_false" ][7 ] = "verificar_falso"
381
+ md ["assert_false" ][8 ] = "подтвердить_ложные"
382
+ md ["assert_false" ][9 ] = "verificar_falso"
383
+
384
+ md ["go_back" ] = ["*" ] * num_langs
385
+ md ["go_back" ][0 ] = "go_back"
386
+ md ["go_back" ][1 ] = "回去"
387
+ md ["go_back" ][2 ] = "terug"
388
+ md ["go_back" ][3 ] = "retour"
389
+ md ["go_back" ][4 ] = "indietro"
390
+ md ["go_back" ][5 ] = "戻る"
391
+ md ["go_back" ][6 ] = "뒤로"
392
+ md ["go_back" ][7 ] = "voltar"
393
+ md ["go_back" ][8 ] = "назад"
394
+ md ["go_back" ][9 ] = "volver"
395
+
396
+ md ["select_option_by_text" ] = ["*" ] * num_langs
397
+ md ["select_option_by_text" ][0 ] = "select_option_by_text"
398
+ md ["select_option_by_text" ][1 ] = "按文本选择选项"
399
+ md ["select_option_by_text" ][2 ] = "optie_selecteren_per_tekst"
400
+ md ["select_option_by_text" ][3 ] = "sélectionner_option_par_texte"
401
+ md ["select_option_by_text" ][4 ] = "selezionare_opzione_per_testo"
402
+ md ["select_option_by_text" ][5 ] = "テキストでオプションを選択"
403
+ md ["select_option_by_text" ][6 ] = "텍스트로_옵션_선택"
404
+ md ["select_option_by_text" ][7 ] = "selecionar_opção_por_texto"
405
+ md ["select_option_by_text" ][8 ] = "выбрать_опцию_по_тексту"
406
+ md ["select_option_by_text" ][9 ] = "seleccionar_opción_por_texto"
407
+
408
+ md ["click_visible_elements" ] = ["*" ] * num_langs
409
+ md ["click_visible_elements" ][0 ] = "click_visible_elements"
410
+ md ["click_visible_elements" ][1 ] = "单击可见元素"
411
+ md ["click_visible_elements" ][2 ] = "klik_zichtbare_elementen"
412
+ md ["click_visible_elements" ][3 ] = "cliquez_éléments_visibles"
413
+ md ["click_visible_elements" ][4 ] = "fare_clic_sugli_elementi_visibili"
414
+ md ["click_visible_elements" ][5 ] = "表示要素をクリックします"
415
+ md ["click_visible_elements" ][6 ] = "페이지_요소를_클릭_합니다"
416
+ md ["click_visible_elements" ][7 ] = "clique_nos_elementos_visíveis"
417
+ md ["click_visible_elements" ][8 ] = "нажмите_видимые_элементы"
418
+ md ["click_visible_elements" ][9 ] = "haga_clic_en_elementos_visibles"
419
+
420
+ md ["hover_and_click" ] = ["*" ] * num_langs
421
+ md ["hover_and_click" ][0 ] = "hover_and_click"
422
+ md ["hover_and_click" ][1 ] = "悬停并单击"
423
+ md ["hover_and_click" ][2 ] = "zweven_en_klik"
424
+ md ["hover_and_click" ][3 ] = "planer_au_dessus_et_cliquez"
425
+ md ["hover_and_click" ][4 ] = "passa_il_mouse_sopra_e_fai_clic"
426
+ md ["hover_and_click" ][5 ] = "上にマウスを移動しクリック"
427
+ md ["hover_and_click" ][6 ] = "위로_마우스를_이동하고_클릭"
428
+ md ["hover_and_click" ][7 ] = "passe_o_mouse_e_clique"
429
+ md ["hover_and_click" ][8 ] = "наведите_и_нажмите"
430
+ md ["hover_and_click" ][9 ] = "pasar_el_ratón_y_hacer_clic"
431
+
432
+ md ["switch_to_frame" ] = ["*" ] * num_langs
433
+ md ["switch_to_frame" ][0 ] = "switch_to_frame"
434
+ md ["switch_to_frame" ][1 ] = "切换到帧"
435
+ md ["switch_to_frame" ][2 ] = "overschakelen_naar_frame"
436
+ md ["switch_to_frame" ][3 ] = "passer_au_cadre"
437
+ md ["switch_to_frame" ][4 ] = "passa_al_frame"
438
+ md ["switch_to_frame" ][5 ] = "フレームに切り替え"
439
+ md ["switch_to_frame" ][6 ] = "프레임으로_전환"
440
+ md ["switch_to_frame" ][7 ] = "mudar_para_o_quadro"
441
+ md ["switch_to_frame" ][8 ] = "переключиться_на_кадр"
442
+ md ["switch_to_frame" ][9 ] = "cambiar_al_marco"
443
+
444
+ md ["switch_to_default_content" ] = ["*" ] * num_langs
445
+ md ["switch_to_default_content" ][0 ] = "switch_to_default_content"
446
+ md ["switch_to_default_content" ][1 ] = "切换到默认内容"
447
+ md ["switch_to_default_content" ][2 ] = "overschakelen_naar_standaardcontent"
448
+ md ["switch_to_default_content" ][3 ] = "passer_au_contenu_par_défaut"
449
+ md ["switch_to_default_content" ][4 ] = "passa_al_contenuto_predefinito"
450
+ md ["switch_to_default_content" ][5 ] = "デフォルトのコンテンツに切り替える"
451
+ md ["switch_to_default_content" ][6 ] = "기본_콘텐츠로_전환"
452
+ md ["switch_to_default_content" ][7 ] = "volte_para_o_conteúdo_padrão"
453
+ md ["switch_to_default_content" ][8 ] = (
454
+ "переключиться_на_содержимое_по_умолчанию" )
455
+ md ["switch_to_default_content" ][9 ] = "cambiar_al_contenido_predeterminado"
456
+
457
+ # MasterQA Only!
458
+ md ["verify" ] = ["*" ] * num_langs
459
+ md ["verify" ][0 ] = "verify"
460
+ md ["verify" ][1 ] = "校验"
461
+ md ["verify" ][2 ] = "controleren"
462
+ md ["verify" ][3 ] = "vérifier"
463
+ md ["verify" ][4 ] = "verificare"
464
+ md ["verify" ][5 ] = "を確認する"
465
+ md ["verify" ][6 ] = "확인"
466
+ md ["verify" ][7 ] = "verificar"
467
+ md ["verify" ][8 ] = "подтвердить"
468
+ md ["verify" ][9 ] = "verificar"
0 commit comments