Skip to content

Commit 7381e47

Browse files
committed
Update the docs
1 parent 353418a commit 7381e47

File tree

3 files changed

+66
-14
lines changed

3 files changed

+66
-14
lines changed

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -112,17 +112,17 @@ from seleniumbase import BaseCase
112112
class MyTestClass(BaseCase):
113113

114114
def test_basic(self):
115+
self.open("https://store.xkcd.com/search")
116+
self.type('input[name="q"]', "xkcd book\n")
117+
self.assert_text("xkcd: volume 0", "h3")
115118
self.open("https://xkcd.com/353/")
116119
self.assert_title("xkcd: Python")
117120
self.assert_element('img[alt="Python"]')
118121
self.click('a[rel="license"]')
119122
self.assert_text("free to copy and reuse")
120123
self.go_back()
121-
self.click("link=About")
122-
self.assert_text("xkcd.com", "h2")
123-
self.open("://store.xkcd.com/collections/everything")
124-
self.update_text("input.search-input", "xkcd book\n")
125-
self.assert_exact_text("xkcd: volume 0", "h3")
124+
self.click_link_text("About")
125+
self.assert_exact_text("xkcd.com", "h2")
126126
```
127127

128128
* By default, **[CSS Selectors](https://www.w3schools.com/cssref/css_selectors.asp)** are used for finding page elements.
@@ -132,7 +132,7 @@ class MyTestClass(BaseCase):
132132
```python
133133
self.open(URL) # Navigate to the web page
134134
self.click(SELECTOR) # Click a page element
135-
self.update_text(SELECTOR, TEXT) # Type text (Add "\n" to text for pressing enter/return.)
135+
self.type(SELECTOR, TEXT) # Type text (Add "\n" to text for pressing enter/return.)
136136
self.assert_element(SELECTOR) # Assert element is visible
137137
self.assert_text(TEXT) # Assert text is visible (has optional SELECTOR arg)
138138
self.assert_title(PAGE_TITLE) # Assert page title
@@ -163,7 +163,7 @@ SeleniumBase automatically handles common WebDriver actions such as spinning up
163163
SeleniumBase uses simple syntax for commands, such as:
164164

165165
```python
166-
self.update_text("input", "dogs\n")
166+
self.type("input", "dogs\n")
167167
```
168168

169169
The same command with regular WebDriver is very messy:
@@ -523,10 +523,10 @@ self.click("div#my_id")
523523

524524
<h4>Typing Text</h4>
525525

526-
self.update_text(selector, text) # updates the text from the specified element with the specified value. An exception is raised if the element is missing or if the text field is not editable. Example:
526+
self.type(selector, text) # updates the text from the specified element with the specified value. An exception is raised if the element is missing or if the text field is not editable. Example:
527527

528528
```python
529-
self.update_text("input#id_value", "2012")
529+
self.type("input#id_value", "2012")
530530
```
531531
You can also use self.add_text() or the WebDriver .send_keys() command, but those won't clear the text box first if there's already text inside.
532532
If you want to type in special keys, that's easy too. Here's an example:

help_docs/chinese.md

Lines changed: 56 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -124,18 +124,20 @@ class MyTestClass(BaseCase):
124124
self.click("link=About")
125125
self.assert_text("xkcd.com", "h2")
126126
self.open("://store.xkcd.com/collections/everything")
127-
self.update_text("input.search-input", "xkcd book\n")
127+
self.type("input.search-input", "xkcd book\n")
128128
self.assert_exact_text("xkcd: volume 0", "h3")
129129
```
130130

131131
* 默认情况下, **[CSS Selectors](https://www.w3schools.com/cssref/css_selectors.asp)** 用来查找页面元素.
132132
* 如果你是CSS Selectors新手, 可以通过 [Flukeout](http://flukeout.github.io/) 游戏来帮助学习掌握.
133133
* 在上述代码中可以看到以下相关的 ``SeleniumBase`` 方法:
134134

135+
``from seleniumbase import BaseCase``:
136+
135137
```python
136138
self.open(URL) # 打开页面
137139
self.click(SELECTOR) # 点击页面元素
138-
self.update_text(SELECTOR, TEXT) # 输入文字 (添加 "\n" 在"TEXT"的末尾来进行换行.)
140+
self.type(SELECTOR, TEXT) # 输入文字 (添加 "\n" 在"TEXT"的末尾来进行换行.)
139141
self.assert_element(SELECTOR) # 断言元素是否存在并可见
140142
self.assert_text(TEXT) # 断言文本是否存在并可见 (可以选择某个元素选择器)
141143
self.assert_title(PAGE_TITLE) # 断言标题是否存在并可见
@@ -155,6 +157,55 @@ self.switch_to_window(WINDOW_NUMBER) # 切换不同的 window/tab
155157
self.save_screenshot(FILE_NAME) # 保存当前页面的截图
156158
```
157159

160+
[chinese_test_1.py](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/translations/chinese_test_1.py):
161+
```python
162+
from seleniumbase.translate.chinese import 硒测试用例
163+
164+
class 我的测试类(硒测试用例):
165+
166+
def test_例子1(self):
167+
self.开启网址("https://xkcd.in/comic?lg=cn&id=353")
168+
self.断言标题("Python - XKCD中文站")
169+
self.断言元素("#content div.comic-body")
170+
self.断言文本("上漫画")
171+
self.单击("div.nextLink")
172+
self.断言文本("老妈的逆袭", "#content h1")
173+
self.单击链接文本("下一篇")
174+
self.断言文本("敲桌子", "#content h1")
175+
self.断言文本("有时候无聊就是最棒的乐趣")
176+
self.回去()
177+
self.单击链接文本("兰德尔·门罗")
178+
self.断言文本("兰德尔·门罗", "#firstHeading")
179+
self.更新文本("#searchInput", "程式设计")
180+
self.单击("#searchButton")
181+
self.断言文本("程序设计", "#firstHeading")
182+
```
183+
184+
``from seleniumbase.translate.chinese import 硒测试用例``:
185+
186+
```python
187+
self.开启(URL) # 打开页面
188+
self.单击(SELECTOR) # 点击页面元素
189+
self.输入文本(SELECTOR, TEXT) # 输入文字 (添加 "\n" 在"TEXT"的末尾来进行换行.)
190+
self.断言元素(SELECTOR) # 断言元素是否存在并可见
191+
self.断言文本(TEXT) # 断言文本是否存在并可见 (可以选择某个元素选择器)
192+
self.断言标题(PAGE_TITLE) # 断言标题是否存在并可见
193+
self.检查断开的链接() # 断言不存在404错误,若存在则断言失败
194+
self.检查JS错误() # 断言不存在js错误 (Chrome-ONLY)
195+
self.执行脚本(JAVASCRIPT) # 在页面中执行js脚本
196+
self.回去() # 返回到上一个url链接页面
197+
self.获取文本(SELECTOR) # 获取元素的文本
198+
self.获取属性(SELECTOR, ATTRIBUTE) # 获取某个定位元素的指定元素属性的属性值
199+
self.元素是否可见(SELECTOR) # 判断元素是否在页面上可见
200+
self.文本是否显示(TEXT) # 判断文本是否在页面上可见(可提供 SELECTOR)
201+
self.悬停并单击(HOVER_SELECTOR, CLICK_SELECTOR) # 鼠标移动在指定元素上后点击另一个元素
202+
self.按文本选择选项(DROPDOWN_SELECTOR, OPTION_TEXT) # 选择下拉框中内容
203+
self.切换到帧(FRAME_NAME) # 切换 webdriver control 到页面上指定 iframe
204+
self.切换到默认内容() # 切换 webdriver control out 到当前的 iframe
205+
self.切换到窗口(WINDOW_NUMBER) # 切换不同的 window/tab
206+
self.保存截图(FILE_NAME) # 保存当前页面的截图
207+
```
208+
158209
完整的 SeleniumBase methods, 可见: <b><a href="https://seleniumbase.io/help_docs/method_summary/">Method Summary</a></b>
159210

160211
<h2><img src="https://seleniumbase.io/img/sb_icon.png" title="SeleniumBase" width="30" /> 了解更多信息:</h2>
@@ -166,7 +217,7 @@ SeleniumBase 自动化控制 WebDriver 操作 web browsers(浏览器),在运行
166217
SeleniumBase 使用简单简约的语法, 例如:
167218

168219
```python
169-
self.update_text("input", "dogs\n")
220+
self.type("input", "dogs\n")
170221
```
171222

172223
上述相似的代码在 Webdriver中变现的不是特别好:
@@ -524,10 +575,10 @@ self.click("div#my_id")
524575

525576
<h4>输入文本</h4>
526577

527-
self.update_text(selector, text) # 用指定的值更新来自指定元素的文本。如果元素丢失或文本字段不可编辑,则引发异常。例如:
578+
self.type(selector, text) # 用指定的值更新来自指定元素的文本。如果元素丢失或文本字段不可编辑,则引发异常。例如:
528579

529580
```python
530-
self.update_text("input#id_value", "2012")
581+
self.type("input#id_value", "2012")
531582
```
532583
您也可以使用self.add_text()或WebDriver .send_keys()命令,但是如果文本框中已经有文本,这些命令不会首先清除文本框
533584
如果您想键入特殊的键,这也很容易。这里有一个例子:

help_docs/method_summary.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,7 @@ self.get_link_status_code(link, allow_redirects=False, timeout=5)
251251
self.assert_link_status_code_is_not_404(link)
252252

253253
self.assert_no_404_errors(multithreaded=True)
254+
# Duplicates: self.assert_no_broken_links(multithreaded=True)
254255

255256
self.print_unique_links_with_status_codes()
256257

0 commit comments

Comments
 (0)