Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
jbt-zh
提交
5ae7d90a
J
jbt-zh
项目概览
OpenDocCN
/
jbt-zh
8 个月 前同步成功
通知
0
Star
8
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jbt-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
5ae7d90a
编写于
6月 25, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2020-06-25 15:35:23
上级
5db72dc8
变更
28
隐藏空白更改
内联
并排
Showing
28 changed file
with
79 addition
and
78 deletion
+79
-78
docs/111.md
docs/111.md
+5
-5
docs/112.md
docs/112.md
+2
-2
docs/113.md
docs/113.md
+3
-3
docs/114.md
docs/114.md
+4
-4
docs/115.md
docs/115.md
+2
-2
docs/116.md
docs/116.md
+7
-7
docs/121.md
docs/121.md
+4
-4
docs/122.md
docs/122.md
+5
-5
docs/123.md
docs/123.md
+1
-1
docs/124.md
docs/124.md
+3
-3
docs/126.md
docs/126.md
+1
-1
docs/127.md
docs/127.md
+1
-1
docs/13.md
docs/13.md
+7
-7
docs/147.md
docs/147.md
+1
-1
docs/154.md
docs/154.md
+1
-1
docs/16.md
docs/16.md
+4
-4
docs/165.md
docs/165.md
+5
-5
docs/19.md
docs/19.md
+4
-4
docs/32.md
docs/32.md
+1
-1
docs/35.md
docs/35.md
+2
-2
docs/36.md
docs/36.md
+1
-1
docs/41.md
docs/41.md
+2
-2
docs/44.md
docs/44.md
+6
-5
docs/6.md
docs/6.md
+1
-1
docs/62.md
docs/62.md
+2
-2
docs/90.md
docs/90.md
+1
-1
docs/93.md
docs/93.md
+2
-2
docs/94.md
docs/94.md
+1
-1
未找到文件。
docs/111.md
浏览文件 @
5ae7d90a
...
...
@@ -22,13 +22,13 @@ driver.findElement(By.LocatorStrategyType ("Locator_Value"));
#### 可用的定位器类型包括:
*
ID
*
Name
*
名称
*
标签名
*
类名称
*
LinkText
*
partialLinkText
*
cssSelector
*
路径
*
链接文本
*
`partialLinkText`
*
`cssSelector`
*
XPath
可以随时通过编程方式掌握页面上所需的元素,但要实现此目的,我们的创作方可能不得不偷看一下。 原因是,我们并不总是可以控制页面上的 HTML。 这就是为什么我们有这么多的定位器类型,而且绝对没有理由惊慌!
...
...
docs/112.md
浏览文件 @
5ae7d90a
...
...
@@ -38,7 +38,7 @@ driver.findElement(By.className("i18n_phone_number_input-inner_input"));
**示例**
:让我们找到在 gmail 帐户创建页面底部提供的超链接“了解更多信息”。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
linkText
(
"Learn more"
));
...
...
@@ -56,7 +56,7 @@ driver.findElement(By.linkText("Learn more"));
**示例**
:让我们在 Gmail 帐户创建页面的“选择用户名”文本框下方找到超链接“我更喜欢使用我当前的电子邮件地址” - 文本:
**我更喜欢**
。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
partialLinkText
(
"I prefer to"
));
...
...
docs/113.md
浏览文件 @
5ae7d90a
...
...
@@ -87,7 +87,7 @@ class="i18n_phone_number_input-inner_input" type="tel">
我们可以看到“
`input`
”标签具有“
`class`
”属性,名称为“
`i18n_phone_number_input-inner_input`
”。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
cssSelector
(
"input.i18n_phone_number_input-inner_input "
));
...
...
@@ -119,7 +119,7 @@ form-error" aria-invalid="true" type="text">
我们可以看到,“
`input`
”标签的“
`name`
”属性为“
`FirstName`
”。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
cssSelector
(
"input[name='FirstName']"
));
...
...
@@ -143,7 +143,7 @@ driver.findElement(By.cssSelector("input[name='FirstName']"));
我们可以看到,“
`input`
”标签具有“
`name`
”和“
`id`
”属性,它们的值均为“
`Passwd`
”,“
`type`
”属性为
`password`
。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
cssSelector
(
"input#Passwd[name='Passwd']"
));
...
...
docs/114.md
浏览文件 @
5ae7d90a
...
...
@@ -69,7 +69,7 @@ driver.findElement(By.cssSelector("label#recovery-email-label input[name='Recove
要标识子元素“狗”,
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
cssSelector
(
"ul#pets li:nth-of-type(2)"
));
...
...
@@ -95,7 +95,7 @@ driver.findElement(By.cssSelector("ul#pets li:nth-of-type(2)"));
我们可以看到
`input`
标签具有一个名为“
`LastName`
”的“
`id`
”属性。 要找到此元素,我们可以指定查找以“
`Last`
”开头的“
`id`
”属性值。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
cssSelector
(
"input[id^='Last']"
));
...
...
@@ -117,7 +117,7 @@ Considering the below code,
我们可以看到“
`input`
”标签的“
`name`
”属性为“
`PasswdAgain`
”。 要找到此元素,我们可以指定查找以“
`Again`
”结尾的“
`name`
”属性值。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
cssSelector
(
"input[name$='Again']"
));
...
...
@@ -139,7 +139,7 @@ Considering the below code,
我们可以看到“
`input`
”标签的“
`name`
”属性为“
`PasswdAgain`
”。 要找到此元素,我们可以指定查找包含“
`wdAg`
”的“
`name`
”属性值。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
cssSelector
(
"input[name*='wdAg']"
));
...
...
docs/115.md
浏览文件 @
5ae7d90a
...
...
@@ -137,7 +137,7 @@ driver.findElement(By.xpath("//input[@type='password'][@id='PasswdAgain']"));
右键单击按钮并检查元素以获取相应的 HTML 代码,如下所示,
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"//div[contains(@class,'button')]/input"
));
...
...
@@ -151,7 +151,7 @@ driver.findElement(By.xpath("//div[contains(@class,'button')]/input"));
**示例**
:让我们在 Gmail 帐户注册页面上找到所有类值为“
`goog-inline-block`
”的元素。
*
Code:
*
*
代码:
*
```
java
driver
.
findElements
(
By
.
xpath
(
"//*[contains(@class,'goog-inline-block')]"
));
...
...
docs/116.md
浏览文件 @
5ae7d90a
...
...
@@ -69,7 +69,7 @@ aria-label="New password" type="password">
因此,第二个元素必须位于我们的案例中。
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"(//input[starts-with(@type,'pass')])[2]"
));
...
...
@@ -115,7 +115,7 @@ XPath 轴定义在当前节点浏览 DOM 的树形结构时要考虑的相对于
</
a
>
```
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"//i[@class='fb_logo']/parent::a"
));
...
...
@@ -133,7 +133,7 @@ Upon inspecting the element,
Birthday
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"//select[@id='month']/ancestor::div[@class='_5k_5']/preceding-sibling::div"
));
...
...
@@ -155,7 +155,7 @@ Upon inspecting the element,
<
label
class
="
uiButton
uiButtonConfirm
" for="
u_0_q
" id="
loginbutton
"
></
label
>
```
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"//label[@id='loginbutton']/child::input"
));
...
...
@@ -177,7 +177,7 @@ First name
<
input
id
=
”
u_0_1
″
class
=”
inputtext
_58mg
_5dba
_2ph
-
”
data
-
type
=
”
text
”
name
=
”
firstname
”
aria
-
required
=
”
1
″
placeholder
=
””
aria
-
label
=
”
First
name
”
type
=
”
text
”
>
</
div
>
```
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"//div[contains(@class,'uiStickyPlaceholderInput')]/descendant::input"
));
...
...
@@ -202,7 +202,7 @@ Upon inspecting the element,
</
td
>
```
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"//td[@class='_51m- hLeft plm']/following-sibling::td/child::a"
));
...
...
@@ -227,7 +227,7 @@ Upon inspecting the element,
</
span
>
```
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
xpath
(
"//label[@class='_58mt']/preceding-sibling::input"
));
...
...
docs/121.md
浏览文件 @
5ae7d90a
...
...
@@ -56,7 +56,7 @@ driver.findElement(By.cssSelector("input[value='Magazines']"));
<
input
id
=
"tricycle-checkbox"
type
=
"checkbox"
name
=
"vehicle2"
value
=
"Tricycle"
disabled
>&
nbsp
;
Tricycle
```
*
Code:
*
*
代码:
*
```
java
driver
.
findElement
(
By
.
name
(
"vehicle2"
)).
isDisplayed
();
...
...
@@ -74,7 +74,7 @@ Respective HTML code for reference,
<
input
id
=
"tricycle-checkbox"
type
=
"checkbox"
name
=
"vehicle2"
value
=
"Tricycle"
disabled
>&
nbsp
;
Tricycle
```
*
Code:
*
*
代码:
*
```
java
WebElement
tricycleCheckbox
=
driver
.
findElement
(
By
.
name
(
"vehicle2"
));
...
...
@@ -100,7 +100,7 @@ Respective HTML code for reference,
<
input
id
=
"magazines-radio-btn"
type
=
"radio"
name
=
"books"
value
=
"Magazines"
>
&
nbsp
;
Magazines
```
*
Code:
*
*
代码:
*
```
java
// Locate 'Magazines' radio button using cssSelector
...
...
@@ -128,7 +128,7 @@ Respective HTML code for reference,
<
input
id
=
"sedan-checkbox"
type
=
"checkbox"
name
=
"vehicle5"
value
=
"Sedan"
>&
nbsp
;
Sedan
```
*
Code:
*
*
代码:
*
```
java
// Locate 'Sedan' checkbox using xPath: contains() and text()
...
...
docs/122.md
浏览文件 @
5ae7d90a
...
...
@@ -127,7 +127,7 @@ languages.deselectByVisibleText("JavaScript");
`value`
属性的值“
`RC`
”将作为参数传递给
`selectByValue`
方法。
*
Code:
*
*
代码:
*
```
java
multiSelect
.
selectByValue
(
"RC"
);
...
...
@@ -145,7 +145,7 @@ multiSelect.selectByValue("RC");
基于 HTML 代码,Selenium IDE 的索引为 0,Selenium WebDriver 的索引为 1,Selenium RC 的索引为 2。
*
Code:
*
*
代码:
*
```
java
multiSelect
.
deselectByIndex
(
2
);
...
...
@@ -163,7 +163,7 @@ multiSelect.deselectByIndex(2);
**示例**
:让我们取消选择在 Selenium 工具套件多重选择框中选择的所有选项。
*
Code:
*
*
代码:
*
```
java
multiSelect
.
deselectAll
();
...
...
@@ -181,7 +181,7 @@ multiSelect.deselectAll();
**语法**
:
`selectObject.getOptions()`
*
Code:
*
*
代码:
*
```
java
List
<
WebElement
>
allOptions
=
multiSelect
.
getOptions
();
...
...
@@ -201,7 +201,7 @@ List<WebElement> allOptions = multiSelect.getOptions();
**语法**
:
`selectObject.getAllSelectedOptions()`
*
Code:
*
*
代码:
*
```
java
List
<
WebElement
>
allSelectedOptions
=
multiSelect
.
getAllSelectedOptions
();
...
...
docs/123.md
浏览文件 @
5ae7d90a
...
...
@@ -52,7 +52,7 @@ System.out.println("Inner table first row text = " + innerRow1.getText());
让我们找到嵌套表的第二行,并将其内容打印到控制台。 相对路径是 XPath 的一部分,用于定位嵌套表的所需单元格。
*
Code:
*
*
代码:
*
```
java
// Locate 'Inner Row 2' using xPath
...
...
docs/124.md
浏览文件 @
5ae7d90a
...
...
@@ -24,7 +24,7 @@ WebElement BooksTable = driver.findElement(By.id("BooksAuthorsTable"));
让我们使用绝对 XPath 查找总行数。 请注意,XPath 以标签名称“
`tr`
”结尾。
`size()`
方法给出使用 XPath 由
`findElements()`
返回的元素数。
*
Code:
*
*
代码:
*
```
java
int
rowNum
=
driver
.
findElements
(
By
.
xpath
(
"/html/body/form/div[5]/div/div/table/tbody/tr"
)).
size
();
...
...
@@ -32,7 +32,7 @@ int rowNum = driver.findElements(By.xpath("/html/body/form/div[5]/div/div/table/
让我们稍微切换一下齿轮,并使用相对 XPath 查找总列数。
*
Code:
*
*
代码:
*
```
java
int
colNum
=
driver
.
findElements
(
By
.
xpath
(
"//table[@id='BooksAuthorsTable']/tbody/tr[1]/th"
)).
size
();
...
...
@@ -46,7 +46,7 @@ int colNum = driver.findElements(By.xpath("//table[@id='BooksAuthorsTable']/tbod
如果表的行和列号固定为,那么遍历每个表元素将变得非常容易。 可以使用两个
`for()`
循环,一个用于行,另一个用于访问列值。
*
Code:
*
*
代码:
*
```
java
for
(
int
i
=
2
;
i
<=
6
;
i
++){
...
...
docs/126.md
浏览文件 @
5ae7d90a
...
...
@@ -43,7 +43,7 @@ Set<String> winHandles = driver.getWindowHandles();
7.
通过两个句柄循环
8.
切换到带有句柄参考的新窗口
9.
获取标题并将其打印到控制台
10.
关闭新
视窗
10.
关闭新
窗口
11.
将控件切换回父窗口,然后将 URL 打印到控制台
12.
验证 Eclipse IDE 控制台输出屏幕和 JUnit 窗格是否成功
...
...
docs/127.md
浏览文件 @
5ae7d90a
...
...
@@ -25,7 +25,7 @@ driver.manage().window().maximize();
8.
切换到带有句柄参考的新窗口
9.
获取标题并将其打印到控制台
10.
将小窗口最大化到全屏尺寸
11.
关闭新
视窗
11.
关闭新
窗口
12.
将控件切换回父窗口,然后将 URL 打印到控制台
13.
验证 Eclipse IDE 控制台输出屏幕和 JUnit 窗格是否成功
...
...
docs/13.md
浏览文件 @
5ae7d90a
...
...
@@ -4,13 +4,13 @@
在本文中,您将学习非访问修饰符。 以下是可用的 Java 非访问修饰符。
*
最后
*
抽象
*
静态的
*
严格
*
本机
*
已同步
*
短暂的
*
`final`
*
`abstract`
*
`static`
*
`strictfp`
*
`native`
*
`syncronized`
*
`transient`
## `final`非访问修饰符
...
...
docs/147.md
浏览文件 @
5ae7d90a
...
...
@@ -25,7 +25,7 @@ Vue 带有一些内置指令。 请注意,我们可以编写自己的自定义
## 场景:
*
显示标题
和
*
显示标题
*
显示带有问候消息的段落,例如“嗨!”
### `Index.html`
...
...
docs/154.md
浏览文件 @
5ae7d90a
...
...
@@ -43,7 +43,7 @@ var app = new Vue({
如果我们想在
`v-for`
语法中使用多个参数,则必须使用括号。
**顺序**
在这里很重要。
*
**第一个自变量**
将始终是
**值**
和
*
**第一个自变量**
将始终是
**值**
*
**第二个自变量**
将是
**键**
。
参数名称可以是我们选择的任何名称。 为了简单和易于理解,让我们使用
`value`
和
`key`
作为参数名称。
...
...
docs/16.md
浏览文件 @
5ae7d90a
...
...
@@ -6,9 +6,9 @@
## Java 语句的类型
*
表达
声明
*
表达
式语句
*
控制语句
*
分配声明
*
赋值语句
在本节中,我们将讨论控制语句。
...
...
@@ -16,8 +16,8 @@
## 控制语句
*
有条件的
执行
*
循环
播放
*
条件
执行
*
循环
控制
*
流控制语句
* * *
...
...
docs/165.md
浏览文件 @
5ae7d90a
...
...
@@ -4,10 +4,10 @@
Python 适用于各种平台,包括 Linux,Windows 和 Mac OS。 因此,在这里我们将了解如何设置 python 环境。 对于本地环境设置,请打开终端窗口,然后在其中键入“python”以知道它是否已安装(如果已安装,则说明是哪个版本)。
*
Unix
/
Linux
*
视窗
*
苹果机
*
从
*
Unix
/
Linux
*
Windows
*
MacOS
*
其它
python 的安装程序也可以从官方网站安装以获得最新版本。 链接在这里
...
...
@@ -30,7 +30,7 @@ python 的安装程序也可以从官方网站安装以获得最新版本。 链
*
下载后,解压缩文件。
*
如果需要,请编辑模块/设置文件。
*
运行
`./configure`
脚本
*
使
*
配置
*
进行安装
此命令将 python 安装在标准位置
`/usr/local/bin`
和
`/usr/local/lib/pythonAA`
中的库中,其中
`AA`
是 python 的版本。
...
...
docs/19.md
浏览文件 @
5ae7d90a
...
...
@@ -19,14 +19,14 @@ class InnerClass {
## 内部类的类型
*
静态
的
*
本地方法
*
静态
*
方法局部
*
匿名
*
除了这些正常的内部
阶级
之外
*
除了这些正常的内部
类
之外
## 普通内部类
非
本地方法
,静态方法或匿名方法的内部类是普通内部类。
非
方法局部
,静态方法或匿名方法的内部类是普通内部类。
```
java
//outer class
...
...
docs/32.md
浏览文件 @
5ae7d90a
...
...
@@ -166,7 +166,7 @@ public class MyTryWithResources {
* `Foo`类的`close()`将消息“正在关闭`Foo`”打印到控制台,并抛出一个异常,该异常在`try`块抛出的异常暴露时被抑制。
* 仅当`try`块和`try-with-resources`语句(`close()`方法)都抛出异常时,`try-with-resources`语句对这种异常的抑制才发生。
* `Bar`类的`close()`运行,并将消息“`Closing Bar`”显示在控制台上。
* 然后,
终于执行了块
。
* 然后,
`finally`块执行
。
3. 如果您还想检索抑制的异常怎么办? 不要担心。 在 Java SE 7 和更高版本中,可以使用`getSuppressed()`方法检索它们。
4. 尽管关闭特定资源时会引发异常,但是所有打开的资源都将被关闭,而与引发的异常无关。 在我们的示例中,尽管关闭`Foo`资源时发生异常,但`Bar`资源也成功关闭。
...
...
docs/35.md
浏览文件 @
5ae7d90a
...
...
@@ -11,9 +11,9 @@
#### 重载方法
*
必须更改参数列表
*
可以更改
退货
类型
*
可以更改
返回
类型
*
可以更改访问修饰符(更广泛)
*
可以声明一个新的或更广泛的
检查
异常
*
可以声明一个新的或更广泛的
受检
异常
###### 方法可以在类或子类中重载。
...
...
docs/36.md
浏览文件 @
5ae7d90a
...
...
@@ -34,7 +34,7 @@ System.out.println("Show method of Sub class");
*
覆盖方法
*不能*
具有比被覆盖的方法更多的
*限制性访问修饰符*
,但可以更少。
*
参数列表必须与覆盖的方法完全匹配,如果不匹配,则很可能是您正在重载该方法。
*
返回类型必须与在超类中的覆盖方法中声明的返回类型相同或为该子类型的子类型。
*
覆盖方法
*可以*
抛出任何
*非受检异常(运行时)*
,但是它可以抛出比被覆盖方法声明的范围更广或更新的
检查
异常,但不能抛出更少或狭窄的异常检查。
*
覆盖方法
*可以*
抛出任何
*非受检异常(运行时)*
,但是它可以抛出比被覆盖方法声明的范围更广或更新的
受检
异常,但不能抛出更少或狭窄的异常检查。
*
*不能覆盖最终的方法*
。
*
*静态*
方法
*无法覆盖*
。 静态方法看起来可以覆盖,但它是隐藏的。
*
如果
*方法无法继承,则无法覆盖*
。
...
...
docs/41.md
浏览文件 @
5ae7d90a
...
...
@@ -21,8 +21,8 @@
*
类(未嵌套)
*
构造器
*
介面
*
方法
本地
内部类(与嵌套类之间的区别)
*
接口
*
方法
局部
内部类(与嵌套类之间的区别)
*
内部类方法
*
实例变量
*
局部变量
...
...
docs/44.md
浏览文件 @
5ae7d90a
...
...
@@ -112,9 +112,8 @@ List l = new ArrayList<E>();
*
可增长数组
*
快速迭代
*
快速随机存取
*
按索引排序的集合
*
未分类
*
快速随机访问
*
按索引排序
* * *
...
...
@@ -145,11 +144,13 @@ List l = new ArrayList<E>();
**属性**
*
未分类
*
无序
*
使用对象的哈希码
*
没有重复的对象
*
`LinkedHashMap`
### `LinkedHashMap`
*
有序(插入)
*
使用对象的哈希码
*
没有重复的对象
...
...
docs/6.md
浏览文件 @
5ae7d90a
...
...
@@ -38,7 +38,7 @@ JDK = JRE + 开发 Java 应用所需的库。
为了理解 Java 的可移植性,您需要从头到尾了解 Java 代码会发生什么。
*
Java 源代码(由开发人员编写)(机器中性)
*
编译代码/字节码(由
`javac`
编译)
。
(机器中性)
*
编译代码/字节码(由
`javac`
编译)(机器中性)
*
执行的字节码(由 JVM 执行)(机器特定)
在步骤 2 中,
`javac`
(Java 编译器)将 Java 代码转换为字节码。 可以将其移动到任何计算机(Windows/Linux)并由 JVM 执行。 JVM 读取字节码并生成机器特定的代码。 为了生成特定于机器的代码,JVM 需要特定于机器。 因此,每种类型的计算机(Windows/Linux/Mac)都具有特定的 JVM。 因此,编码器
...
...
docs/62.md
浏览文件 @
5ae7d90a
...
...
@@ -144,14 +144,14 @@ Thread(String name)
到目前为止,我们遇到了线程的三种状态
*
新
增
*
新
建
*
可运行的
*
正在运行
线程还有更多状态,线程将无法运行。
*
等待/阻止/睡眠
*
已死
*
死亡
当线程的
`run`
方法完成执行时,该线程处于死亡状态。
...
...
docs/90.md
浏览文件 @
5ae7d90a
...
...
@@ -34,7 +34,7 @@ Selenium 命令具有三种不同的样式:*操作,访问器和断言*。
这些操作大多数都带有后缀“
`AndWait`
”,例如 “
`clickAndWait`
”。 此后缀确保 Selenium 等待新页面或元素加载。
##
存取
器:
##
访问
器:
这些命令用于检查应用的状态。 这些让我们将结果存储在用户定义的变量中,这些变量可用于断言的目的。 它们不会直接与页面元素交互。
...
...
docs/93.md
浏览文件 @
5ae7d90a
...
...
@@ -15,10 +15,10 @@
定位依据
*
ID
*
Name
*
名称
*
链接文本
*
CSS
*
判断
*
DOM
*
XPath
## 通过 ID 定位
...
...
docs/94.md
浏览文件 @
5ae7d90a
...
...
@@ -9,7 +9,7 @@
定位依据
*
CSS
*
判断
*
DOM
*
XPath
让我们一一看一下。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录