zoukankan      html  css  js  c++  java
  • 【求助】测试XCode v8.0的正向反向功能

    目的:测试XCode v8.0的正常反向功能。

    正向工程:从数据库读取架构信息,生成实体类。

    反向工程:根据实体类的特性构造架构信息,反向生成数据库或者修改数据库。

    准备工作:

    1,自备数据库实例,最好是自己的数据库,为了测试各种数据库的各种字段能否被识别为正确的.Net类型(正向工程),同时也测试.Net类型能否正确转为对应的数据库类型(反向工程)。(支持MSSQL、Access、SqlCe、SQLite、MySql、Oracle、PostgreSQL、Firebird)

    2,最新的XCoder v4.2一份

    开始:

    1,在XCoder.exe.config中配置连接字符串,如果没有这个文件,运行一次XCoder即可自动生成。XCoder能自动发现本机MSSQL,本目录Access和SQLite。

    image

    2,启动后的主界面。连接那里下拉选择的就是前面配置的连接。检查模版那里是否有模版可选择。

    image

    3,选择要测试的连接字符串,点“连接”。此时XCoder通过XCode取得数据库架构,拿到了所有表信息,并在数据表那里列出来。

    image

    4,先备份一下架构信息,留后面使用。

    image image

    5,选择“实体”模版,点击“生成所有表”,0.3秒即可生成12个实体类。点击“打开目录”可以直接看到。

    image

    image

    6,新建一个控制台项目,引用NewLife.Core.dll和XCode.dll(可以从代码生成器里面拿到)。并把刚才生成所有实体类拷贝进去。

    image

    7,再添加一个应用配置App.Config。加上一些配置信息。我们生成实体类的时候,设置了连接名为Common,这个配置文件里面本应该配置一个名为Common的连接,但是我们通过XCode的连接名映射功能把Common这个连接名映射到别的连接名上去。

    image

    8,写几句代码试一试。

    image

    9,修改连接字符串,开始测试反向工程。

    image

    10,重新启动程序。运行结果没什么变化,只是慢了一点点。其实,这是因为我们指定了一个并不存在的数据库Common888,同时配置文件里面打开了反向工程的开关XCode.Schema.Enable,XCode自动创建数据库和数据表。

    image

    11,检查一下数据库里面的字段,看看字段类型是否与本来的数据库类型一致。同时检查索引是否能够正确创建。

    image

    12,测试不同数据库间的兼容性。比如从MSSQL生成实体类,然后反向工程生成到SQLite中去。这方面可以多做几个测试。测试人员之间也可以互相交换数据库架构信息(第4步导出),用XCoder导入也可以生成实体类。

    image image

    XCode的类型对应基于ADO.Net,但是大量存在一种.Net类型对应多种数据库类型的情况,我们只能做很小的一部分测试,不能保证各种类型的字段都能得到正确识别。

    各个需要附加DLL的数据库提供者,会自动下载!

    目前XCode对各个数据库的兼容性情况排名:MSSQL2008/2005》MSSQL2000》Access》SQLite》Oracle》MySql》SqlCe》PostgreSQL》Firebird,越是后面,可能存在的问题就越多。

    至于正向反向工程以外的问题,可以通过把项目指定到不同类型的数据库上进行测试。

    测试过程中遇到的各种问题,在群里反馈,实时修正各种BUG。

    测试相关资料下载地址:http://xcode.codeplex.com/releases/view/73026

  • 相关阅读:
    yii 引入文件
    CodeForces 621C Wet Shark and Flowers
    面试题题解
    POJ 2251 Dungeon Master
    HDU 5935 Car(模拟)
    HDU 5938 Four Operations(暴力枚举)
    CodeForces 722C Destroying Array(并查集)
    HDU 5547 Sudoku(dfs)
    HDU 5583 Kingdom of Black and White(模拟)
    HDU 5512 Pagodas(等差数列)
  • 原文地址:https://www.cnblogs.com/nnhy/p/2171078.html
Copyright © 2011-2022 走看看