[toc]
# Contains Assertion
包含断言用于在请求或响应中查找匹配特定 pattern 的文本或内容。
>[warning]为了在不使用 pattern 的情况下验证固定值,请使用 [XPath Match](XPathMatch.md) 或 [JSONPath Match](JSONPathMatch.md) 断言。
## 适用场景
您可以在 ReadyAPI 套件的不同应用程序中使用这个断言。根据应用程序的不同,断言验证以下数据:
| 应用 | 检查数据 | 更多信息 |
| --- | --- | --- |
| [SoapUI](SoapUI.md) | request 和 response 内容 | [SoapUI 断言](断言.md) |
| [Secure](Secure.md) | response 内容 | [Secure 断言](Secure断言.md) |
| [ServiceV](ServiceV.md) | request 内容 | [ServiceV 断言](ServiceV断言.md) |
## 创建断言
1、在对话框的左边,选择 **Property Content** 类别。
2、在对话框的右边,选择 **Contains** 。
3、点击 **Add** 。
**SoapUI**
![](https://support.smartbear.com/readyapi/docs/_images/testing/assertions/reference/create-soap.png)
**Secure**
![](https://support.smartbear.com/readyapi/docs/_images/testing/assertions/reference/create-secure.png)
**ServiceV**
![](https://support.smartbear.com/readyapi/docs/_images/testing/assertions/reference/create-servicev.png)
## 设置断言
1、在 Content 编辑框中,输入要查找的字符串:
![](https://support.smartbear.com/readyapi/docs/_images/testing/assertions/reference/property/contains.png)
你可以指定一个正则表达式来匹配请求或响应正文内容,而不是使用字符串。要了解更多关于正则表达式语法的知识,请参阅 [Oracle 文档](https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html) 。
要在正则表达式中启用多行模式,使用 `(?m)` [标记](https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html#MULTILINE) ,然后以 `^` 标记行的开始,以 `$` 标记行的结束。
你还可以使用属性扩展表达式,比如:`${#TestCase#CustomPropertyName}` ,断言将从指定的属性获取所需的值。另外,你可以右键单击编辑框,在右键菜单中选择 **Get Data** ,然后从 [Get Data 对话框](GetData对话框.md) 直接选择某个属性。
![](https://support.smartbear.com/readyapi/docs/_images/testing/assertions/reference/property/contains-get-data.png)
2、启用额外的选项:
| 选项 | 描述 |
| --- | --- |
| **Ignore Case** | 查找过程中忽略内容的大小写。 |
| **Regular Expression** | 启用正则表达式(输入内容将被当作正则表达式处理)。 |
## 示例
正则表达式:获取所有 Date 值在 2014 年 9 月的字符串。
```
<Date>2014-09-\d{2}T.{8}</Date>
```
正则表达式:检查响应状态是否为 200 OK 或 202 Accepted 。
```
<status>(OK)|(Accepted)</status>
```
---
**参考资料**
1、[ReadyAPI Documentation / Testing APIs / Verifying Results / Assertion Reference / Property Content Assertions / Contains Assertion](https://support.smartbear.com/readyapi/docs/testing/assertions/reference/property/contains.html)
---
:-: --- 贡献者名单(排名不分先后) ---
:-: **材料**
:-: **编写**
李云
:-: **校验**
:-: **支持**
- 基础知识
- 属性
- 属性分类
- 属性扩展
- Get Data 对话框
- 断言
- 关于断言
- 使用断言
- 断言类型
- Response SLA
- Script
- Property Content Assertions
- Contains
- Equals
- Equals Binary
- JSONPath Count
- JSONPath Existence Match
- JSONPath Match
- JSONPath RegEx Match
- Message Content
- Not Contains
- XPath Match
- XQuery Match
- Compliance Assertions
- Swagger Compliance
- Schema Compliance
- HTTP Header Exists
- HTTP Header Equals
- JDBC Assertions
- 复制断言
- 术语
- 脚本
- 关于脚本
- 脚本编辑器
- JSONPath
- Projects
- SoapUI
- 测试步骤
- Groovy Script
- DataSource
- Conditional GoTo
- REST Request
- ReadyAPI
- 环境
- 关于环境
- 创建环境
- Rest Services
- Custom Properties
- JDBC Connections
- 团队协作
- 集成
- GitLab
- 第三方库
- Groovy 库
- Java 库
- 自定义ReadyAPI
- 首选项
- 全局属性
- ReadyAPI
- Code Templates
- JVM 设置
- 修改
- 实战指导
- 项目属性
- Groovy
- 代码片段
- 开发规范 v0.1
- 属性
- inbox
- FAQ
- 安装配置
- 复合工程
- 修改文件夹或文件名称