JSON / XML文件
使用JSON / XML文件加载到缓存数据库模块一个JSON或XML文件加载到一个SQLite数据库。
这个功能的典型用例是:
验证一个JSON或XML文件中的内容,如有多少记录出现在一般或有多少记录某种类型的礼物。
协助上述用例和提供全面的灵活性,内容加载到一个数据库,您可以通过SQL查询。这允许您运行的各种标准测试数据完整性,包括元数据现场测试和行,行比较。
配置的路径SQLite数据库的缓存设置对话框托斯卡指挥官(见“设置- Tricentis数据完整性”章188金宝搏app苹果下载软件)。
JSON / XML文件加载到缓存数据库模块
的JSON / XML文件加载到缓存数据库模块包含以下属性:
ModuleAttribute |
描述 |
可选 |
---|---|---|
文件名称 |
输入完整的文件路径和文件名称的JSON或XML文件加载。 |
|
文件格式 |
定义你的文件的文件格式。JSON和XML支持的格式。 |
|
JPath/XPath |
定义JPath或XPath表达式导航元素和属性在XML或JSON文件。您可以定义JPath / XPath,如果你有一个大文件,想过滤掉文件的特定的子节点。 如果您定义XPath,不支持名称空间。 |
X |
表前缀 |
为了避免覆盖具有相同名称的现有表,指定一个表前缀。这个前缀用于创建所有表。 |
X |
JSON / XML文件加载到缓存数据库模块在一个TestStep
逻辑创建表
XML文件加载到缓存数据库后,文件的内容转换为一个表以下列方式:
文件中的每个节点有子节点,被转换成一个表。
值的节点的所有子节点,成为父表中的列。如果一个值节点出现不止一次在其父母或有一个属性,它将有自己的表。
如果n下一个标签出现在不同的地方不同的父母,它有外键列在以下格式:___id格式的主键。Parent1TableName___id外键。
如果你指定XPath,结果是包装在一个人造的根,称为实体一个有效的XML。因此,一个实体创建表。
如果节点是失踪的事件之一其母公司的价值零。如果它存在,但没有文本,它有一个空值。
查询的内容加载到缓存通过SQL数据库,使用子表中的外键加入父表的子表,例如。
查询可能包括以下SQL语句:
选择*从地址
加入人在address.Person___id=Person.___id
在下面的示例中,您可以看到一个XML文件的结构包含三个节点的值地址:
<人>
<名称>约翰< /名称>
<地址>
<街>山< /街>
<城市>悉尼> < /城市
<中国>来自< /国家>
< /地址>
<地址>
<街>街2< /街>
<城市>都市2> < /城市
<中国>HG< /国家>
< /地址>
> < /人
___id列创建为每个表的主键。的地址节点有三个街,城市和国家值的节点。
地址表为SQLite数据库浏览器
![]() |
如果你想显示如何联系实际的表,您可以使用SchemaCrawler。 |
例如:使用JSON / XML文件加载到缓存数据库模块
这个例子中加载该文件人Table.xml到缓存数据库中。
加载XML文件
XML文件包含重复值你想转换成一个节点人,地址和街表。
<人>
<名称>柯尔莫哥洛夫< /名称>
<地址>
<街>山< /街>
<街>新月< /街>
<城市>悉尼> < /城市
<中国>来自< /国家>
< /地址>
> < /人
在ScratchBook运行TestCase后,得到以下结果:
导致ScratchBook
的Loginfo列ScratchBook显示执行结果和创建了哪些表:人,地址,街。
在安装数据库浏览器SQLite你可以打开数据库加载和视图创建了表:
人表为SQLite数据库浏览器
地址表为SQLite数据库浏览器
街表为SQLite数据库浏览器
如这个例子所示,___id列创建一个表的主键。的地址节点有两个街值的节点。因为他们是重复的,一个单独的表街创建节点。连接街表地址表,一个外键Address___id是补充道。在这个例子中,两个山和新月属于同一地址。