Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
adaptation-master
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
912协同工作系统
项目监控管理工具
adaptation-master
Commits
d099740b
提交
d099740b
authored
1月 15, 2020
作者:
wyl
浏览文件
操作
浏览文件
下载
差异文件
合并分支 'wyl' 到 'master'
Wyl 查看合并请求 ty_wyl/adaptation-master1!63
上级
d18c05be
8eb635e4
隐藏空白字符变更
内嵌
并排
正在显示
7 个修改的文件
包含
101 行增加
和
253 行删除
+101
-253
pom.xml
pom.xml
+0
-6
Report.java
...java/com/zjty/adaptationmaster/adaptor/entity/Report.java
+2
-2
PomDependency.java
...r/adaptor/entity/pomEntity/SecondFloor/PomDependency.java
+1
-0
AdaptationServiceImpl.java
...ionmaster/adaptor/service/Impl/AdaptationServiceImpl.java
+1
-1
Inspector.java
src/main/java/com/zjty/adaptationmaster/utils/Inspector.java
+97
-67
SeleniumUtils.java
...n/java/com/zjty/adaptationmaster/utils/SeleniumUtils.java
+0
-108
TestCase.java
src/main/java/com/zjty/adaptationmaster/utils/TestCase.java
+0
-69
没有找到文件。
pom.xml
浏览文件 @
d099740b
...
@@ -195,12 +195,6 @@
...
@@ -195,12 +195,6 @@
<artifactId>
junit-jupiter-api
</artifactId>
<artifactId>
junit-jupiter-api
</artifactId>
<version>
RELEASE
</version>
<version>
RELEASE
</version>
<scope>
compile
</scope>
<scope>
compile
</scope>
<exclusions>
<exclusion>
<artifactId>
apiguardian-api
</artifactId>
<groupId>
org.apiguardian
</groupId>
</exclusion>
</exclusions>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
org.apache.commons
</groupId>
<groupId>
org.apache.commons
</groupId>
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/entity/Report.java
浏览文件 @
d099740b
...
@@ -8,9 +8,8 @@ import lombok.Data;
...
@@ -8,9 +8,8 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
import
lombok.NoArgsConstructor
;
import
javax.persistence.*
;
import
javax.persistence.*
;
import
java.nio.file.Path
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
@Data
@Data
@NoArgsConstructor
@NoArgsConstructor
...
@@ -24,6 +23,7 @@ public class Report {
...
@@ -24,6 +23,7 @@ public class Report {
private
int
fileNum
;
private
int
fileNum
;
private
long
lineNum
;
private
long
lineNum
;
private
List
<
PomDependency
>
dependencies
;
private
List
<
PomDependency
>
dependencies
;
@Transient
@Transient
private
ProjectPom
projectPom
;
private
ProjectPom
projectPom
;
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/entity/pomEntity/SecondFloor/PomDependency.java
浏览文件 @
d099740b
...
@@ -20,6 +20,7 @@ public class PomDependency {
...
@@ -20,6 +20,7 @@ public class PomDependency {
private
String
artifactId
;
private
String
artifactId
;
private
String
version
;
private
String
version
;
private
Integer
reportId
;
private
Integer
reportId
;
/*依赖类型,默认类型是jar。它通常表示依赖的文件的扩展名,但也有例外。一个类型可以被映射成另外一个扩展
/*依赖类型,默认类型是jar。它通常表示依赖的文件的扩展名,但也有例外。一个类型可以被映射成另外一个扩展
名或分类器。类型经常和使用的打包方式对应,尽管这也有例外。一些类型的例子:jar,war,ejb-client和test-jar。
名或分类器。类型经常和使用的打包方式对应,尽管这也有例外。一些类型的例子:jar,war,ejb-client和test-jar。
如果设置extensions为 true,就可以在plugin里定义新的类型。所以前面的类型的例子不完整
如果设置extensions为 true,就可以在plugin里定义新的类型。所以前面的类型的例子不完整
...
...
src/main/java/com/zjty/adaptationmaster/adaptor/service/Impl/AdaptationServiceImpl.java
浏览文件 @
d099740b
...
@@ -81,7 +81,7 @@ public class AdaptationServiceImpl implements AdaptationService {
...
@@ -81,7 +81,7 @@ public class AdaptationServiceImpl implements AdaptationService {
//project1.setCodeUrl(Const.UPLOAD_LOCATION+File.separator+project1.getProjectName());
//project1.setCodeUrl(Const.UPLOAD_LOCATION+File.separator+project1.getProjectName());
project1
.
setCodeUrl
(
Const
.
UPLOAD_LOCATION
+
project1
.
getProjectName
());
project1
.
setCodeUrl
(
Const
.
UPLOAD_LOCATION
+
project1
.
getProjectName
());
try
{
try
{
FileUtils
.
cleanDirectory
(
new
File
(
project
.
getCodeUrl
()));
FileUtils
.
cleanDirectory
(
new
File
(
project
1
.
getCodeUrl
()));
FileZip
.
unzip
(
new
File
(
path
),
project1
.
getCodeUrl
());
FileZip
.
unzip
(
new
File
(
path
),
project1
.
getCodeUrl
());
project1
.
setStage
(
project
.
getStage
());
project1
.
setStage
(
project
.
getStage
());
if
(
project
.
getStage
()
==
1
){
if
(
project
.
getStage
()
==
1
){
...
...
src/main/java/com/zjty/adaptationmaster/utils/Inspector.java
浏览文件 @
d099740b
...
@@ -17,10 +17,8 @@ import org.dom4j.io.SAXReader;
...
@@ -17,10 +17,8 @@ import org.dom4j.io.SAXReader;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.yaml.snakeyaml.Yaml
;
import
org.yaml.snakeyaml.Yaml
;
import
java.io.File
;
import
java.io.*
;
import
java.io.FileInputStream
;
import
java.net.URLDecoder
;
import
java.io.FileNotFoundException
;
import
java.io.IOException
;
import
java.nio.charset.MalformedInputException
;
import
java.nio.charset.MalformedInputException
;
import
java.nio.file.*
;
import
java.nio.file.*
;
import
java.nio.file.attribute.BasicFileAttributes
;
import
java.nio.file.attribute.BasicFileAttributes
;
...
@@ -39,69 +37,101 @@ import java.util.*;
...
@@ -39,69 +37,101 @@ import java.util.*;
public
class
Inspector
{
public
class
Inspector
{
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
LocalDateTime
.
now
());
//System.out.println("请输入项目地址,然后回车");
//Scanner scanner = new Scanner(System.in);
//String next = scanner.next();
//Project project = new Project();
//Project project = new Project();
//project.setCodeUrl(next);
Map
<
String
,
Report
.
Language
>
suffixLanguageMapping
=
new
HashMap
<>();
suffixLanguageMapping
.
put
(
"java"
,
Report
.
Language
.
JAVA
);
// Map<String, Report.Language> suffixLanguageMapping = new HashMap<>();
suffixLanguageMapping
.
put
(
"cpp"
,
Report
.
Language
.
CPP
);
// suffixLanguageMapping.put("java",Report.Language.JAVA);
suffixLanguageMapping
.
put
(
"py"
,
Report
.
Language
.
PYTHON
);
// suffixLanguageMapping.put("cpp",Report.Language.CPP);
suffixLanguageMapping
.
put
(
"jsp"
,
Report
.
Language
.
JSP
);
// suffixLanguageMapping.put("py",Report.Language.PYTHON);
suffixLanguageMapping
.
put
(
"html"
,
Report
.
Language
.
ONLYVIEW
);
// suffixLanguageMapping.put("jsp",Report.Language.JSP);
suffixLanguageMapping
.
put
(
"js"
,
Report
.
Language
.
JAVASCRIPT
);
// suffixLanguageMapping.put("html",Report.Language.ONLYVIEW);
suffixLanguageMapping
.
put
(
"go"
,
Report
.
Language
.
GO
);
// suffixLanguageMapping.put("js",Report.Language.JAVASCRIPT);
// suffixLanguageMapping.put("go",Report.Language.GO);
List
<
Rule
>
ruleList
=
new
ArrayList
<>();
//
//com.mysql.cj.jdbc.Driver//com.mysql.jdbc.Driver
// List<Rule> ruleList = new ArrayList<>();
ruleList
.
add
(
new
Rule
(
"com.mysql.cj.jdbc.Driver"
,
"建议修改为postgresql数据库驱动"
));
// //com.mysql.cj.jdbc.Driver//com.mysql.jdbc.Driver
ruleList
.
add
(
new
Rule
(
"com.mysql.jdbc.Driver"
,
"建议修改为postgresql数据库驱动"
));
// ruleList.add(new Rule("com.mysql.cj.jdbc.Driver","建议修改为postgresql数据库驱动"));
//net.sourceforge.jtds.jdbc.Driver//sqlserver
// ruleList.add(new Rule("com.mysql.jdbc.Driver","建议修改为postgresql数据库驱动"));
ruleList
.
add
(
new
Rule
(
"net.sourceforge.jtds.jdbc.Driver"
,
"建议修改为postgresql数据库驱动"
));
// //net.sourceforge.jtds.jdbc.Driver//sqlserver
//COM.ibm.db2.jdbc.app.DB2Driver//com.ibm.db2.jcc.DB2Driver//COM.ibm.db2.jdbc.net.DB2Driver//com.ibm.db2.jcc.DB2Driver
// ruleList.add(new Rule("net.sourceforge.jtds.jdbc.Driver","建议修改为postgresql数据库驱动"));
ruleList
.
add
(
new
Rule
(
"DB2Driver"
,
"建议修改为postgresql数据库驱动"
));
// //COM.ibm.db2.jdbc.app.DB2Driver//com.ibm.db2.jcc.DB2Driver//COM.ibm.db2.jdbc.net.DB2Driver//com.ibm.db2.jcc.DB2Driver
//oracle.jdbc.OracleDriver//oracle.jdbc.driver.OracleDriver
// ruleList.add(new Rule("DB2Driver","建议修改为postgresql数据库驱动"));
ruleList
.
add
(
new
Rule
(
"OracleDriver"
,
"建议修改为postgresql数据库驱动"
));
// //oracle.jdbc.OracleDriver//oracle.jdbc.driver.OracleDriver
// ruleList.add(new Rule("OracleDriver","建议修改为postgresql数据库驱动"));
ruleList
.
add
(
new
Rule
(
"mysql-connector-java"
,
"建议修改为postgresql依赖声明"
));
//
ruleList
.
add
(
new
Rule
(
"com.microsoft.sqlserver"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("mysql-connector-java","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"com.oracle"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("com.microsoft.sqlserver","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"org.mariadb.jdbc"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("com.oracle","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"com.sap.cloud.db.jdbc"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("org.mariadb.jdbc","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"com.ibm.informix"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("com.sap.cloud.db.jdbc","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"org.firebirdsql.jdbc"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("com.ibm.informix","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"org.hsqldb"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("org.firebirdsql.jdbc","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"com.h2database"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("org.hsqldb","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"org.apache.derby"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("com.h2database","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"org.mongodb"
,
"建议修改为postgresql依赖声明"
));
// ruleList.add(new Rule("org.apache.derby","建议修改为postgresql依赖声明"));
// ruleList.add(new Rule("org.mongodb","建议修改为postgresql依赖声明"));
ruleList
.
add
(
new
Rule
(
"public native"
,
"这里用到了JNI"
));
//
ruleList
.
add
(
new
Rule
(
"<packaging>jar</packaging>"
,
"建议修改打包方式为war包并排除掉springboot内置的tomcat,以部署到国产化中间件上"
));
// ruleList.add(new Rule("public native","这里用到了JNI"));
ruleList
.
add
(
new
Rule
(
"WebOffice"
,
"这里用到了weboffice文档展示编辑插件"
));
// ruleList.add(new Rule("<packaging>jar</packaging>","建议修改打包方式为war包并排除掉springboot内置的tomcat,以部署到国产化中间件上"));
ruleList
.
add
(
new
Rule
(
"webOffice"
,
"这里用到了weboffice文档展示编辑插件"
));
// ruleList.add(new Rule("WebOffice","这里用到了weboffice文档展示编辑插件"));
ruleList
.
add
(
new
Rule
(
"weboffice"
,
"这里用到了weboffice文档展示编辑插件"
));
// ruleList.add(new Rule("pdfobject.min.js","这里用到了pdf文档展示插件"));
ruleList
.
add
(
new
Rule
(
"Weboffice"
,
"这里用到了weboffice文档展示编辑插件"
));
// ruleList.add(new Rule("pdfobject.js","这里用到了pdf文档展示插件"));
ruleList
.
add
(
new
Rule
(
"pdfobject.min.js"
,
"这里用到了pdf文档展示插件"
));
// ruleList.add(new Rule(".swf","这里用到了flash流媒体播放插件"));
ruleList
.
add
(
new
Rule
(
"pdfobject.js"
,
"这里用到了pdf文档展示插件"
));
ruleList
.
add
(
new
Rule
(
".swf"
,
"这里用到了flash流媒体播放插件"
));
// //String[] projectSrc = {"D:\\project\\testAccess\\rhasspy-master"};
// //多个子项目
String
path
=
Inspector
.
class
.
getProtectionDomain
().
getCodeSource
().
getLocation
().
getFile
();
// String[] projectSrc = {"D:\\project\\testAccess\\SpringBoot-Labs-master"/*"D:\\project\\bservice","D:\\project\\debug","D:\\project\\glutton"*/};
String
decode
=
null
;
// //String[] projectSrc = {"D:\\project\\testAccess\\Telegram-master"};
try
{
// for(String s:projectSrc){
decode
=
URLDecoder
.
decode
(
path
,
"UTF-8"
);
// Project project = new Project();
}
catch
(
UnsupportedEncodingException
e
)
{
// project.setCodeUrl(s);
e
.
printStackTrace
();
// Inspector inspector = new Inspector(project,suffixLanguageMapping,ruleList);
}
// Report inspect = inspector.inspect();
File
outfile
=
new
File
(
decode
);
// System.out.println("语言:"+inspect.getLanguage()+" 数据库:"+inspect.getDatabaseType()+" 依赖管理:"+inspect.getDependenceManagement()+" 文件数量:"+inspect.getFileNum()+" 代码行数:"+inspect.getLineNum());
// for(Warn warn:inspect.getWarnList()){
int
i
=
0
;
// System.out.println("\t"+warn);
System
.
out
.
println
(
"请输入文件夹路径,该文件夹中包含多个项目"
);
// }
Scanner
scanner
=
new
Scanner
(
System
.
in
);
// //System.out.println(inspect);
String
line
=
scanner
.
nextLine
();
// }
File
file
=
new
File
(
line
);
// System.out.println(LocalDateTime.now());
File
[]
files
=
file
.
listFiles
();
for
(
File
file1:
files
)
{
Project
project
=
new
Project
();
project
.
setCodeUrl
(
file1
.
getAbsolutePath
());
Report
report
=
new
Inspector
(
project
,
suffixLanguageMapping
,
ruleList
,
"aaa"
).
inspect
();
File
file2
=
new
File
(
outfile
.
getParent
()+
"/评估报告"
+
i
+++
".txt"
);
if
(
file2
.
exists
()){
file2
.
delete
();
}
try
{
System
.
out
.
println
(
"生成报告文件"
+
file2
.
getAbsolutePath
());
file2
.
createNewFile
();
FileWriter
writer
=
new
FileWriter
(
file2
);
writer
.
write
(
"系统名称:"
+
file1
.
getName
()+
"\n"
);
writer
.
write
(
"评估时间:"
+
new
Date
()+
"\n\n"
);
writer
.
write
(
"语言:"
+
report
.
getLanguage
()+
"\t"
);
writer
.
write
(
"依赖管理工具:"
+
report
.
getDependenceManagement
()+
"\t"
);
writer
.
write
(
"是否前后端分离:"
+
report
.
getIsSeparate
()+
"\t"
);
writer
.
write
(
"架构:"
+
report
.
getFramework
()+
"\n"
);
writer
.
write
(
"数据库类型:"
+
report
.
getDatabaseType
()+
"\t"
);
writer
.
write
(
"文件数量:"
+
report
.
getFileNum
()+
"\t"
);
writer
.
write
(
"代码行数:"
+
report
.
getLineNum
()+
"\n\n"
);
int
j
=
1
;
for
(
Warn
warn:
report
.
getWarnList
()){
writer
.
write
(
j
+++
"、所在文件:"
+
warn
.
getPath
()+
" 行数:"
+
warn
.
getLine
()+
"行 关键字:"
+
warn
.
getKeyWord
()+
"\n"
+
"建议:"
+
warn
.
getSuggest
());
}
writer
.
close
();
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
}
}
}
private
String
uuid
;
private
String
uuid
;
...
@@ -205,7 +235,7 @@ public class Inspector {
...
@@ -205,7 +235,7 @@ public class Inspector {
for
(
Rule
rule:
ruleList
){
for
(
Rule
rule:
ruleList
){
if
(
s
.
indexOf
(
rule
.
getTarget
())>-
1
){
if
(
s
.
indexOf
(
rule
.
getTarget
())>-
1
){
warnList
.
add
(
new
Warn
(
file
.
toString
()
.
substring
(
Const
.
UPLOAD_LOCATION
.
length
())
,
i
+
1
,
rule
.
getTarget
(),
rule
.
getReplacing
()));
warnList
.
add
(
new
Warn
(
file
.
toString
()
/*.substring(Const.UPLOAD_LOCATION.length())*/
,
i
+
1
,
rule
.
getTarget
(),
rule
.
getReplacing
()));
}
}
}
}
}
}
...
...
src/main/java/com/zjty/adaptationmaster/utils/SeleniumUtils.java
deleted
100644 → 0
浏览文件 @
d18c05be
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
org.openqa.selenium.*
;
import
org.openqa.selenium.firefox.FirefoxDriver
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
java.util.*
;
@Component
public
class
SeleniumUtils
{
@Value
(
"${driverweb}"
)
private
String
driverweb
;
public
WebDriver
initfifox
()
{
System
.
out
.
println
(
driverweb
);
System
.
setProperty
(
"webdriver.gecko.driver"
,
driverweb
);
// 设置驱动类型和位置
WebDriver
driver
=
new
FirefoxDriver
();
return
driver
;
}
public
String
ElementAction
(
List
<
TestCase
>
steps
)
{
WebDriver
driver
=
null
;
try
{
driver
=
initfifox
();
Random
random
=
null
;
for
(
TestCase
step
:
steps
)
{
Thread
.
sleep
(
1000
);
if
(
step
.
getAction
().
equalsIgnoreCase
(
"get"
)){
driver
.
get
(
step
.
getElement
());
}
else
if
(
step
.
getAction
().
equalsIgnoreCase
(
"sendkeys"
)){
String
value
=
step
.
getValue
()
==
null
?
""
:
step
.
getValue
();
if
(
value
.
equalsIgnoreCase
(
"random"
)){
random
=
new
Random
();
int
i
=
random
.
nextInt
(
1000
)+
1000
;
value
=
"test"
+
i
;
}
// driver.findElement(By.xpath(step.getElement())).sendKeys(value);
WebElement
webElement
=
selectType
(
step
.
getMethod
(),
step
.
getElement
(),
driver
);
webElement
.
sendKeys
(
value
);
System
.
out
.
println
(
step
.
getTitle
()+
": "
+
step
.
getElement
()+
" "
+
step
.
getMethod
()+
" "
+
step
.
getAction
()+
" "
+
value
);
}
else
if
(
step
.
getAction
().
equalsIgnoreCase
(
"click"
)){
// driver.findElement(By.xpath(step.getElement())).click();
WebElement
webElement
=
selectType
(
step
.
getMethod
(),
step
.
getElement
(),
driver
);
webElement
.
click
();
System
.
out
.
println
(
step
.
getTitle
()+
": "
+
step
.
getElement
()+
" "
+
step
.
getMethod
()+
" "
+
step
.
getAction
()+
" "
);
}
else
if
(
step
.
getAction
().
equalsIgnoreCase
(
"gettext"
)){
WebElement
webElement
=
selectType
(
step
.
getMethod
(),
step
.
getElement
(),
driver
);
if
(
"errorMsg"
.
equalsIgnoreCase
(
step
.
getElement
())){
if
(
""
.
equals
(
webElement
.
getText
())){
System
.
out
.
println
(
"登录成功!"
);
}
}
else
{
webElement
.
getText
();
System
.
out
.
println
(
webElement
.
getText
());
}
}
else
if
(
step
.
getAction
().
equalsIgnoreCase
(
"readonly"
)){
String
value
=
step
.
getValue
()
==
null
?
""
:
step
.
getValue
();
JavascriptExecutor
removeAttribute
=
(
JavascriptExecutor
)
driver
;
//remove readonly attribute
removeAttribute
.
executeScript
(
"var setDate=document.getElementById(\""
+
step
.
getElement
()+
"\");setDate.removeAttribute('placeholder');"
);
WebElement
webElement
=
selectType
(
step
.
getMethod
(),
step
.
getElement
(),
driver
);
webElement
.
sendKeys
(
"1990-01-02"
);
System
.
out
.
println
(
step
.
getTitle
()+
": "
+
step
.
getElement
()+
" "
+
step
.
getMethod
()+
" "
+
step
.
getAction
()+
" "
+
value
);
}
else
if
(
step
.
getAction
().
equalsIgnoreCase
(
"register"
)){
String
value
=
step
.
getValue
()
==
null
?
""
:
step
.
getValue
();
if
(
value
.
equals
(
driver
.
getCurrentUrl
())){
String
text
=
driver
.
findElement
(
By
.
xpath
(
step
.
getElement
())).
getText
();
System
.
out
.
println
(
text
);
}
else
{
String
errorMsg
=
driver
.
findElement
(
By
.
id
(
"errorMsg"
)).
getText
();
System
.
out
.
println
(
errorMsg
);
}
}
}
}
catch
(
Exception
e
){
System
.
out
.
println
(
e
.
getMessage
());
}
finally
{
driver
.
quit
();
if
(
driver
!=
null
){
driver
=
null
;
}
}
return
null
;
//目前没有用,预留返回字段
}
private
WebElement
selectType
(
String
method
,
String
element
,
WebDriver
driver
)
{
WebElement
element1
=
null
;
if
(
method
.
equalsIgnoreCase
(
"xpath"
)){
element1
=
driver
.
findElement
(
By
.
xpath
(
element
));
}
else
if
(
method
.
equalsIgnoreCase
(
"css"
)){
element1
=
driver
.
findElement
(
By
.
cssSelector
(
element
));
}
else
if
(
method
.
equalsIgnoreCase
(
"id"
)){
element1
=
driver
.
findElement
(
By
.
id
(
element
));
}
else
if
(
method
.
equalsIgnoreCase
(
"name"
)){
element1
=
driver
.
findElement
(
By
.
name
(
element
));
}
return
element1
;
}
}
src/main/java/com/zjty/adaptationmaster/utils/TestCase.java
deleted
100644 → 0
浏览文件 @
d18c05be
package
com
.
zjty
.
adaptationmaster
.
utils
;
import
cn.afterturn.easypoi.excel.annotation.Excel
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* <p>Description : assess
* <p>Date : 2020/1/3 17:04
* <p>@author : C
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
TestCase
{
/**
* 标题
*/
@Excel
(
name
=
"用例标题"
)
private
String
title
;
/**
* 前置条件
*/
@Excel
(
name
=
"前置条件"
)
private
String
condition
;
/**
* 步骤
*/
@Excel
(
name
=
"步骤"
)
private
String
step
;
/**
* 元素
*/
@Excel
(
name
=
"元素"
)
private
String
element
;
/**
* 方式
*/
@Excel
(
name
=
"方式"
)
private
String
method
;
/**
* 对象
*/
@Excel
(
name
=
"对象"
)
private
String
obj
;
/**
* 动作
*/
@Excel
(
name
=
"动作"
)
private
String
action
;
@Excel
(
name
=
"参数"
)
private
String
value
;
/**
* 期望
*/
@Excel
(
name
=
"期望"
)
private
String
respect
;
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论