import java.util.List;
import java.util.Map; import org.apache.log4j.Logger; import com.eviware.soapui.SoapUI;
import com.eviware.soapui.SoapUIProSettings;
import com.eviware.soapui.impl.wsdl.WsdlProjectPro;
import com.eviware.soapui.impl.wsdl.support.connections.DatabaseConnection;
import com.eviware.soapui.impl.wsdl.support.connections.DefaultDatabaseConnectionContainer;
import com.eviware.soapui.model.environment.Environment;
import com.eviware.soapui.model.project.Project;
import com.eviware.soapui.model.settings.Settings;
import com.eviware.soapui.model.testsuite.TestSuite;
import com.eviware.soapui.settings.HttpSettings;
import com.eviware.soapui.settings.ProxySettings;
import com.eviware.soapui.support.GroovyUtils; public class ProjectLevel { public void mypro(Project project,Logger log){ project.getProperties().clear(); project.setPropertyValue("", ""); GroovyUtils.registerJdbcDriver("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // project.getPropertyAt(1).getName(),get the soapui project level from API. if(project instanceof WsdlProjectPro){
//properties for project
String name = project.getName();
String description = project.getDescription(); String path = project.getPath();
String resourceRoot = project.getResourceRoot();
((WsdlProjectPro) project).setComposite(true);
project.getShadowPassword();
((WsdlProjectPro) project).getScriptLibrary();
((WsdlProjectPro) project).getDefaultScriptLanguage();
((WsdlProjectPro) project).setCacheDefinitions(true); //custom properties before setup the soapui project //testsuite
int testSuiteCount = project.getTestSuiteCount();
TestSuite testSuiteByName = project.getTestSuiteByName("");
List<TestSuite> testSuiteList = project.getTestSuiteList();
Map<String, TestSuite> testSuites = ((WsdlProjectPro) project).getTestSuites(); for(TestSuite suite:testSuiteList){
String name2 = suite.getName(); } for(String key:testSuites.keySet()){
TestSuite value = testSuites.get(key);
} //configuration jdbc connections
GroovyUtils.registerJdbcDriver("com.microsoft.sqlserver.jdbc.SQLServerDriver"); DefaultDatabaseConnectionContainer databaseConnectionContainer = ((WsdlProjectPro) project).getDatabaseConnectionContainer();
String[] databaseConnectionsNames = databaseConnectionContainer.getDatabaseConnectionsNames(com.eviware.soapui.model.environment.DefaultEnvironment.getInstance());
for(String dbname:databaseConnectionsNames){
databaseConnectionContainer.removeDatabaseConnectionByName(dbname);
} DatabaseConnection addDatabaseConnection = databaseConnectionContainer.addDatabaseConnection("com.microsoft.sqlserver.jdbc.SQLServerDriver");
addDatabaseConnection.setDriver("com.microsoft.sqlserver.jdbc.SQLServerDriver");
addDatabaseConnection.setConnectionString("jdbc:sqlserver://");
addDatabaseConnection.setName("testname");
addDatabaseConnection.setPassword(""); int projectCount = project.getWorkspace().getProjectCount(); //environment settings ,we can mark testing with different environments ,refer this url
//http://www.soapui.org/Working-with-Projects/environment-handling-in-soapui.html
String activeEnvironmentName = ((WsdlProjectPro) project).getActiveEnvironmentName();
((WsdlProjectPro) project).setActiveEnvironment("staging"); ((WsdlProjectPro) project).getEnvironmentList().clear();
List<Environment> environmentList = ((WsdlProjectPro) project).getEnvironmentList();
for(Environment e:environmentList){ String project2 = e.getProject().getName();
String name2 = e.getName();
e.addNewProperty("propertyname","propertyvlaue");
e.addNewService("testservice", null);
} //soapui preference global settings, like the http settings,proxy settings and so on
Settings settings = SoapUI.getSettings(); settings.setString(ProxySettings.ENABLE_PROXY, "false");
settings.setString(HttpSettings.HTTP_VERSION, "1.1");
settings.setString(SoapUIProSettings.OUTLINE_EDITOR_LIMIT, "4000000");
settings.setString(SoapUIProSettings.FORM_EDITOR_LIMIT, "200000"); settings.setString(SoapUIProSettings.SCRIPT_LIBRARY, "C:\\TEST\\groovy");
settings.setString(SoapUIProSettings.COMPLETE_MESSAGE_LOGS,"true"); SoapUI.updateProxyButtonAndTooltip();
SoapUI.updateProxyFromSettings();
settings.reloadSettings(); //set the event }

SoapUI Pro Project Solution Collection-Custom project and setup的更多相关文章

  1. SoapUI Pro Project Solution Collection –Easy develop Groovy Script to improve SoapUI ability

    As you know the groovy script and java script language is the soapui supported .but unfortunately So ...

  2. SoapUI Pro Project Solution Collection-access the soapui object

    Technorati 标签: Soapui pro,web service,apI Testing

  3. 在MyEclipse中将Java Project转换成Web Project

    在MyEclipse中将Java Project转换成Web Project 此添加方法是针对MyEclipse中添加的: 编辑工程的.project文件: 添加 <nature>com. ...

  4. soapUI pro :INFO:Error getting response for []; javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated

    need to configure two for the https address: Step 1 export the certificate from the IE settings opti ...

  5. 新建项目下的web文件夹下的dynamic web project和static web project和web fragment project的区别

    dynamic web project是Eclipse的项目,与其对应的有static web project,前者指动态web项目,包含一些动态代码,如java:而static web projec ...

  6. Dynamic Web Project vs Static Web Project 以及 Project facets

    Dynamic Web Project vs Static Web Project 需要用到JSP,servlet等技术的动态服务器技术,就需要DWP:对于全部都是html页面的可以使用static ...

  7. weex 项目开发(一) weex create project 与 weex init project 的区别

    开发环境配置:http://www.cnblogs.com/crazycode2/p/7822961.html 1. weex create project  与  weex init project ...

  8. SoapUI Pro官网原包百度云盘分享

    SoapUI Pro下载是件很痛苦的事,经常断网,或者是下载时间过长,这里分享的是截止2019.01.01 最新的安装原包. 百度云盘资源:https://pan.baidu.com/s/1SXTFs ...

  9. SoapUI Pro 最新版本和最新功能

    专为整个后端的端到端测试而构建 创建全面的端到端测试,以从API定义或实时端点验证API的整个工作流程.只需单击几下即可传递响应数据并添加断言-无需编码. 综合生成或配置数据 通过简单的数据驱动测试来 ...

随机推荐

  1. ERP产品采购申请管理(三十八)

    BLL层代码: public class BioPurchaseBLL { /// <summary> /// 购进申请添加 /// </summary> /// <pa ...

  2. 检查Rabbitmq中队列及消息个数,还有清空的方法

    rabbitmqctl list_queues rabbitmqctl purge_queue kafka_queue (不推荐)使用reset方式重置rabbitmq即清空掉rabbitmq所有的队 ...

  3. 【BZOJ4927】第一题 双指针+DP

    题解: 虽然是过了,不过做的十分智障 首先是有 2根 2 1 1 , 3根 1 1 1 这两种方法 然后考虑2 2 1 1 two-point-two没啥好说的 3 1 1 1 我很智障的以为数据范围 ...

  4. Mysql 模糊匹配(字符串str中是否包含子字符串substr)

    1.LIKE 通常与 % 一同使用,类似于一个元字符的搜索.若substr不在str中,则返回0. 2.INSTR(str,substr) 返回字符串 str 中子字符串的第一次出现位置.若subst ...

  5. spring继承Rabbitmq client-----------------------待研究

    一:概述 1.官网 https://spring.io/ 2.进入project 3.找到spring AMQP 二:程序 1.结构 2.pom <?xml version="1.0& ...

  6. Springboot中实现策略模式+工厂模式

    策略模式和工厂模式相信大家都比较熟悉,但是大家有没有在springboot中实现策略和工厂模式? 具体策略模式和工厂模式的UML我就不给出来了,使用这个这两个模式主要是防止程序中出现大量的IF ELS ...

  7. 获取img的高

    我们可以通过css设置图片的width,然后通过 clientWidth获取图片的宽,但是这个宽似乎是css里面定义的width值,但是对于图片的高,使用 clientHeight 来获取似乎是有些问 ...

  8. Ubuntu crontab 定时 python 详细

    Ubuntu系统,定时执行python脚本. 目的:每分钟执行一次timer_test.py timer_test.py    路径 /home/li/d/pythonwork/test/timer_ ...

  9. 18,EasyNetQ-使用替代DI容器

    EasyNetQ由独立组件组成. 它在内部使用称为DefaultServiceProvider的小型内部DI(IoC)容器. 如果您查看用于创建核心IBus接口实例的静态RabbitHutch类的代码 ...

  10. Project_Lemon测评系统使用经验

    Project_Lemon使用经验 如果您还没有安装Project_Lemon,那么请移步https://www.cnblogs.com/CreeperLKF/p/9201859.html去查阅安装教 ...