Skip to content

Commit d18eac4

Browse files
Elaborate find_element deprecation message (#10273)
* make warnings detailed * Small fix Co-authored-by: Diego Molina <diemol@users.noreply.github.com>
1 parent f296ca9 commit d18eac4

File tree

3 files changed

+63
-61
lines changed

3 files changed

+63
-61
lines changed

‎py/selenium/webdriver/remote/webdriver.py

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -489,7 +489,7 @@ def find_elements_by_id(self, id_) -> List[WebElement]:
489489
elements = driver.find_elements_by_id('foo')
490490
"""
491491
warnings.warn(
492-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
492+
"find_elements_by_id is deprecated. Please use find_elements(by=By.ID, value=id_) instead",
493493
DeprecationWarning,
494494
stacklevel=2,
495495
)
@@ -514,7 +514,7 @@ def find_element_by_xpath(self, xpath) -> WebElement:
514514
element = driver.find_element_by_xpath('//div/td[1]')
515515
"""
516516
warnings.warn(
517-
"find_element_by_* commands are deprecated. Please use find_element() instead",
517+
"find_element_by_xpath is deprecated. Please use find_element(by=By.XPATH, value=xpath) instead",
518518
DeprecationWarning,
519519
stacklevel=2,
520520
)
@@ -537,7 +537,7 @@ def find_elements_by_xpath(self, xpath) -> List[WebElement]:
537537
elements = driver.find_elements_by_xpath("//div[contains(@class, 'foo')]")
538538
"""
539539
warnings.warn(
540-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
540+
"find_elements_by_xpath is deprecated. Please use find_elements(by=By.XPATH, value=xpath) instead",
541541
DeprecationWarning,
542542
stacklevel=2,
543543
)
@@ -562,7 +562,7 @@ def find_element_by_link_text(self, link_text) -> WebElement:
562562
element = driver.find_element_by_link_text('Sign In')
563563
"""
564564
warnings.warn(
565-
"find_element_by_* commands are deprecated. Please use find_element() instead",
565+
"find_element_by_link_text is deprecated. Please use find_element(by=By.LINK_TEXT, value=link_text) instead",
566566
DeprecationWarning,
567567
stacklevel=2,
568568
)
@@ -585,7 +585,7 @@ def find_elements_by_link_text(self, text) -> List[WebElement]:
585585
elements = driver.find_elements_by_link_text('Sign In')
586586
"""
587587
warnings.warn(
588-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
588+
"find_elements_by_link_text is deprecated. Please use find_elements(by=By.LINK_TEXT, value=text) instead",
589589
DeprecationWarning,
590590
stacklevel=2,
591591
)
@@ -610,7 +610,7 @@ def find_element_by_partial_link_text(self, link_text) -> WebElement:
610610
element = driver.find_element_by_partial_link_text('Sign')
611611
"""
612612
warnings.warn(
613-
"find_element_by_* commands are deprecated. Please use find_element() instead",
613+
"find_element_by_partial_link_text is deprecated. Please use find_element(by=By.PARTIAL_LINK_TEXT, value=link_text) instead",
614614
DeprecationWarning,
615615
stacklevel=2,
616616
)
@@ -633,7 +633,7 @@ def find_elements_by_partial_link_text(self, link_text) -> List[WebElement]:
633633
elements = driver.find_elements_by_partial_link_text('Sign')
634634
"""
635635
warnings.warn(
636-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
636+
"find_elements_by_partial_link_text is deprecated. Please use find_elements(by=By.PARTIAL_LINK_TEXT, value=link_text) instead",
637637
DeprecationWarning,
638638
stacklevel=2,
639639
)
@@ -658,7 +658,7 @@ def find_element_by_name(self, name) -> WebElement:
658658
element = driver.find_element_by_name('foo')
659659
"""
660660
warnings.warn(
661-
"find_element_by_* commands are deprecated. Please use find_element() instead",
661+
"find_element_by_name is deprecated. Please use find_element(by=By.NAME, value=name) instead",
662662
DeprecationWarning,
663663
stacklevel=2,
664664
)
@@ -681,7 +681,7 @@ def find_elements_by_name(self, name) -> List[WebElement]:
681681
elements = driver.find_elements_by_name('foo')
682682
"""
683683
warnings.warn(
684-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
684+
"find_elements_by_name is deprecated. Please use find_elements(by=By.NAME, value=name)=By.NAME, value=name) instead",
685685
DeprecationWarning,
686686
stacklevel=2,
687687
)
@@ -706,7 +706,7 @@ def find_element_by_tag_name(self, name) -> WebElement:
706706
element = driver.find_element_by_tag_name('h1')
707707
"""
708708
warnings.warn(
709-
"find_element_by_* commands are deprecated. Please use find_element() instead",
709+
"find_element_by_tag_name is deprecated. Please use find_element(by=By.TAG_NAME, value=name) instead",
710710
DeprecationWarning,
711711
stacklevel=2,
712712
)
@@ -729,7 +729,7 @@ def find_elements_by_tag_name(self, name) -> List[WebElement]:
729729
elements = driver.find_elements_by_tag_name('h1')
730730
"""
731731
warnings.warn(
732-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
732+
"find_elements_by_tag_name is deprecated. Please use find_elements(by=By.TAG_NAME, value=name) instead",
733733
DeprecationWarning,
734734
stacklevel=2,
735735
)
@@ -754,7 +754,7 @@ def find_element_by_class_name(self, name) -> WebElement:
754754
element = driver.find_element_by_class_name('foo')
755755
"""
756756
warnings.warn(
757-
"find_element_by_* commands are deprecated. Please use find_element() instead",
757+
"find_element_by_class_name is deprecated. Please use find_element(by=By.CLASS_NAME, value=name) instead",
758758
DeprecationWarning,
759759
stacklevel=2,
760760
)
@@ -777,7 +777,7 @@ def find_elements_by_class_name(self, name) -> List[WebElement]:
777777
elements = driver.find_elements_by_class_name('foo')
778778
"""
779779
warnings.warn(
780-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
780+
"find_elements_by_class_name is deprecated. Please use find_elements(by=By.CLASS_NAME, value=name) instead",
781781
DeprecationWarning,
782782
stacklevel=2,
783783
)
@@ -802,7 +802,7 @@ def find_element_by_css_selector(self, css_selector) -> WebElement:
802802
element = driver.find_element_by_css_selector('#foo')
803803
"""
804804
warnings.warn(
805-
"find_element_by_* commands are deprecated. Please use find_element() instead",
805+
"find_element_by_css_selector is deprecated. Please use find_element(by=By.CSS_SELECTOR, value=css_selector) instead",
806806
DeprecationWarning,
807807
stacklevel=2,
808808
)
@@ -825,7 +825,7 @@ def find_elements_by_css_selector(self, css_selector) -> List[WebElement]:
825825
elements = driver.find_elements_by_css_selector('.foo')
826826
"""
827827
warnings.warn(
828-
"find_elements_by_* commands are deprecated. Please use find_elements() instead",
828+
"find_elements_by_css_selector is deprecated. Please use find_elements(by=By.CSS_SELECTOR, value=css_selector) instead",
829829
DeprecationWarning,
830830
stacklevel=2,
831831
)

‎py/selenium/webdriver/remote/webelement.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ def find_element_by_id(self, id_):
185185
186186
foo_element = element.find_element_by_id('foo')
187187
"""
188-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
188+
warnings.warn("find_element_by_id is deprecated. Please use find_element(by=By.ID, value=id_) instead")
189189
return self.find_element(by=By.ID, value=id_)
190190

191191
def find_elements_by_id(self, id_):
@@ -204,7 +204,7 @@ def find_elements_by_id(self, id_):
204204
205205
elements = element.find_elements_by_id('foo')
206206
"""
207-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
207+
warnings.warn("find_elements_by_id is deprecated. Please use find_elements(by=By.ID, value=id_) instead")
208208
return self.find_elements(by=By.ID, value=id_)
209209

210210
def find_element_by_name(self, name):
@@ -224,7 +224,7 @@ def find_element_by_name(self, name):
224224
225225
element = element.find_element_by_name('foo')
226226
"""
227-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
227+
warnings.warn("find_element_by_name is deprecated. Please use find_element(by=By.NAME, value=name) instead")
228228
return self.find_element(by=By.NAME, value=name)
229229

230230
def find_elements_by_name(self, name):
@@ -242,7 +242,7 @@ def find_elements_by_name(self, name):
242242
243243
elements = element.find_elements_by_name('foo')
244244
"""
245-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
245+
warnings.warn("find_elements_by_name is deprecated. Please use find_elements(by=By.NAME, value=name) instead")
246246
return self.find_elements(by=By.NAME, value=name)
247247

248248
def find_element_by_link_text(self, link_text):
@@ -262,7 +262,7 @@ def find_element_by_link_text(self, link_text):
262262
263263
element = element.find_element_by_link_text('Sign In')
264264
"""
265-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
265+
warnings.warn("find_element_by_link_text is deprecated. Please use find_element(by=By.LINK_TEXT, value=link_text) instead")
266266
return self.find_element(by=By.LINK_TEXT, value=link_text)
267267

268268
def find_elements_by_link_text(self, link_text):
@@ -280,7 +280,7 @@ def find_elements_by_link_text(self, link_text):
280280
281281
elements = element.find_elements_by_link_text('Sign In')
282282
"""
283-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
283+
warnings.warn("find_elements_by_link_text is deprecated. Please use find_elements(by=By.LINK_TEXT, value=text) instead")
284284
return self.find_elements(by=By.LINK_TEXT, value=link_text)
285285

286286
def find_element_by_partial_link_text(self, link_text):
@@ -300,7 +300,7 @@ def find_element_by_partial_link_text(self, link_text):
300300
301301
element = element.find_element_by_partial_link_text('Sign')
302302
"""
303-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
303+
warnings.warn("find_element_by_partial_link_text is deprecated. Please use find_element(by=By.PARTIAL_LINK_TEXT, value=link_text) instead")
304304
return self.find_element(by=By.PARTIAL_LINK_TEXT, value=link_text)
305305

306306
def find_elements_by_partial_link_text(self, link_text):
@@ -318,7 +318,7 @@ def find_elements_by_partial_link_text(self, link_text):
318318
319319
elements = element.find_elements_by_partial_link_text('Sign')
320320
"""
321-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
321+
warnings.warn("find_elements_by_partial_link_text is deprecated. Please use find_elements(by=By.PARTIAL_LINK_TEXT, value=link_text) instead")
322322
return self.find_elements(by=By.PARTIAL_LINK_TEXT, value=link_text)
323323

324324
def find_element_by_tag_name(self, name):
@@ -338,7 +338,7 @@ def find_element_by_tag_name(self, name):
338338
339339
element = element.find_element_by_tag_name('h1')
340340
"""
341-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
341+
warnings.warn("find_element_by_tag_name is deprecated. Please use find_element(by=By.TAG_NAME, value=name) instead")
342342
return self.find_element(by=By.TAG_NAME, value=name)
343343

344344
def find_elements_by_tag_name(self, name):
@@ -356,7 +356,7 @@ def find_elements_by_tag_name(self, name):
356356
357357
elements = element.find_elements_by_tag_name('h1')
358358
"""
359-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
359+
warnings.warn("find_elements_by_tag_name is deprecated. Please use find_elements(by=By.TAG_NAME, value=name) instead")
360360
return self.find_elements(by=By.TAG_NAME, value=name)
361361

362362
def find_element_by_xpath(self, xpath):
@@ -390,7 +390,7 @@ def find_element_by_xpath(self, xpath):
390390
391391
element = element.find_element_by_xpath('//div/td[1]')
392392
"""
393-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
393+
warnings.warn("find_element_by_xpath is deprecated. Please use find_element(by=By.XPATH, value=xpath) instead")
394394
return self.find_element(by=By.XPATH, value=xpath)
395395

396396
def find_elements_by_xpath(self, xpath):
@@ -423,7 +423,7 @@ def find_elements_by_xpath(self, xpath):
423423
elements = element.find_elements_by_xpath("//div[contains(@class, 'foo')]")
424424
425425
"""
426-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
426+
warnings.warn("find_elements_by_xpath is deprecated. Please use find_elements(by=By.XPATH, value=xpath) instead")
427427
return self.find_elements(by=By.XPATH, value=xpath)
428428

429429
def find_element_by_class_name(self, name):
@@ -443,7 +443,7 @@ def find_element_by_class_name(self, name):
443443
444444
element = element.find_element_by_class_name('foo')
445445
"""
446-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
446+
warnings.warn("find_element_by_class_name is deprecated. Please use find_element(by=By.CLASS_NAME, value=name) instead")
447447
return self.find_element(by=By.CLASS_NAME, value=name)
448448

449449
def find_elements_by_class_name(self, name):
@@ -461,7 +461,7 @@ def find_elements_by_class_name(self, name):
461461
462462
elements = element.find_elements_by_class_name('foo')
463463
"""
464-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
464+
warnings.warn("find_elements_by_class_name is deprecated. Please use find_elements(by=By.CLASS_NAME, value=name) instead")
465465
return self.find_elements(by=By.CLASS_NAME, value=name)
466466

467467
def find_element_by_css_selector(self, css_selector):
@@ -481,7 +481,7 @@ def find_element_by_css_selector(self, css_selector):
481481
482482
element = element.find_element_by_css_selector('#foo')
483483
"""
484-
warnings.warn("find_element_by_* commands are deprecated. Please use find_element() instead")
484+
warnings.warn("find_element_by_css_selector is deprecated. Please use find_element(by=By.CSS_SELECTOR, value=css_selector) instead")
485485
return self.find_element(by=By.CSS_SELECTOR, value=css_selector)
486486

487487
def find_elements_by_css_selector(self, css_selector):
@@ -499,7 +499,7 @@ def find_elements_by_css_selector(self, css_selector):
499499
500500
elements = element.find_elements_by_css_selector('.foo')
501501
"""
502-
warnings.warn("find_elements_by_* commands are deprecated. Please use find_elements() instead")
502+
warnings.warn("find_elements_by_css_selector is deprecated. Please use find_elements(by=By.CSS_SELECTOR, value=css_selector) instead")
503503
return self.find_elements(by=By.CSS_SELECTOR, value=css_selector)
504504

505505
def send_keys(self, *value) -> None:

0 commit comments

Comments
 (0)