提交 9a89229b authored 作者: 孙洁清's avatar 孙洁清

路由规则

上级 a8cc7cf7
...@@ -16,11 +16,16 @@ import com.zjty.autotest.util.IdWorker; ...@@ -16,11 +16,16 @@ import com.zjty.autotest.util.IdWorker;
import com.zjty.autotest.util.UnZipRarUtil; import com.zjty.autotest.util.UnZipRarUtil;
import com.zjty.autotest.websocket.WebSocketServer; import com.zjty.autotest.websocket.WebSocketServer;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.util.Assert;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.io.IOException; import java.io.IOException;
...@@ -78,106 +83,108 @@ public class TestTask { ...@@ -78,106 +83,108 @@ public class TestTask {
project.setInputs(inputs); project.setInputs(inputs);
} }
// Report report =testSelenium();
//调用黄承天代码 //调用黄承天代码
Report report = seleniumExecutor.execute(project); Report report = seleniumExecutor.execute(project);
log.info("黄承天结束返回 report:{}",report); log.info("黄承天结束返回 report:{}",report);
List<Measure> measures = report.getMeasures(); if(report!=null) {
if (measures != null && measures.size() > 0) { List<Measure> measures = report.getMeasures();
long count = measures.stream().filter(m -> m.getSuccess() != true).count(); if (measures != null && measures.size() > 0) {
EvaReport evaReport = new EvaReport(); long count = measures.stream().filter(m -> m.getSuccess() != true).count();
evaReport.setBrowser("chrome"); EvaReport evaReport = new EvaReport();
evaReport.setBrowser("chrome");
// evaReport.setBrowser(report.getBrowser()); // evaReport.setBrowser(report.getBrowser());
evaReport.setFailCount(testChannel.getName() + "系统通过测试," + "未通过测试点共0个"); evaReport.setFailCount(testChannel.getName() + "系统通过测试," + "未通过测试点共0个");
if (count > 0) { if (count > 0) {
evaReport.setFailCount(testChannel.getName() + "系统未通过测试," + "未通过测试点共" + count + "个"); evaReport.setFailCount(testChannel.getName() + "系统未通过测试," + "未通过测试点共" + count + "个");
} }
evaReport.setProjectName(report.getProjectName());
evaReport.setCreateTime(new Date());
evaReport.setSystem("Uos");
evaReport.setUrl(testChannel.getUrl());
List<FailMessage> failMessages = new ArrayList<>();
List<Measure> measureList = measures.stream().filter(m -> !m.getSuccess()).collect(Collectors.toList());
for (Measure measure : measureList) {
FailMessage failMessage = new FailMessage();
failMessage.setUrl(measure.getUrl());
failMessage.setMessage(measure.getMessage());
failMessage.setPicture(measure.getScreenshot());
failMessages.add(failMessage);
}
evaReport.setFailMessages(failMessages);
evaReport.setPageRoutes(null);
List<PageContentTest> pageContents = new ArrayList<>(); evaReport.setProjectName(report.getProjectName());
for (Measure measure : measures) { evaReport.setCreateTime(new Date());
PageContentTest pageContentTest = new PageContentTest(); evaReport.setSystem("Uos");
pageContentTest.setUrl(measure.getUrl()); evaReport.setUrl(testChannel.getUrl());
pageContentTest.setMessage(measure.getMessage()); List<FailMessage> failMessages = new ArrayList<>();
pageContentTest.setResponseTime(measure.getResponseTime()); List<Measure> measureList = measures.stream().filter(m -> !m.getSuccess()).collect(Collectors.toList());
pageContentTest.setScreenshot(measure.getScreenshot()); for (Measure measure : measureList) {
pageContentTest.setSuccess(0); FailMessage failMessage = new FailMessage();
if (measure.getSuccess()) { failMessage.setUrl(measure.getUrl());
pageContentTest.setSuccess(1); failMessage.setMessage(measure.getMessage());
failMessage.setPicture(measure.getScreenshot());
failMessages.add(failMessage);
} }
List<ElementDetail> elementDetails = measure.getElementDetails(); evaReport.setFailMessages(failMessages);
if (elementDetails != null) { evaReport.setPageRoutes(null);
List<PageContent> contents = new ArrayList<>();
for (ElementDetail elementDetail : elementDetails) { List<PageContentTest> pageContents = new ArrayList<>();
PageContent pageContent = new PageContent(); for (Measure measure : measures) {
pageContent.setParms(elementDetail.getType()); PageContentTest pageContentTest = new PageContentTest();
pageContent.setMessage(elementDetail.getMessage()); pageContentTest.setUrl(measure.getUrl());
pageContent.setResponseTime(elementDetail.getResponseTime()); pageContentTest.setMessage(measure.getMessage());
pageContent.setSuccess(0); pageContentTest.setResponseTime(measure.getResponseTime());
if (elementDetail.getSuccess()) { pageContentTest.setScreenshot(measure.getScreenshot());
pageContent.setSuccess(1); pageContentTest.setSuccess(0);
if (measure.getSuccess()) {
pageContentTest.setSuccess(1);
}
List<ElementDetail> elementDetails = measure.getElementDetails();
if (elementDetails != null) {
List<PageContent> contents = new ArrayList<>();
for (ElementDetail elementDetail : elementDetails) {
PageContent pageContent = new PageContent();
pageContent.setParms(elementDetail.getType());
pageContent.setMessage(elementDetail.getMessage());
pageContent.setResponseTime(elementDetail.getResponseTime());
pageContent.setSuccess(0);
if (elementDetail.getSuccess()) {
pageContent.setSuccess(1);
}
contents.add(pageContent);
} }
contents.add(pageContent); pageContentTest.setContents(contents);
} }
pageContentTest.setContents(contents); pageContents.add(pageContentTest);
} }
pageContents.add(pageContentTest); evaReport.setPageContents(pageContents);
} List<PageRoute> pageRoutes = new ArrayList<>();
evaReport.setPageContents(pageContents); for (Measure measure : measures) {
List<PageRoute> pageRoutes = new ArrayList<>(); PageRoute pageRoute = new PageRoute();
for (Measure measure : measures) { pageRoute.setPageName(measure.getUrl());
PageRoute pageRoute = new PageRoute(); pageRoute.setSuccess(0);
pageRoute.setPageName(measure.getUrl()); if (measure.getSuccess()) {
pageRoute.setSuccess(0); pageRoute.setSuccess(1);
if (measure.getSuccess()) { }
pageRoute.setSuccess(1); pageRoute.setMessage("无/有");
pageRoute.setPicture(measure.getScreenshot());
pageRoute.setResponseTime(measure.getResponseTime());
pageRoutes.add(pageRoute);
} }
pageRoute.setMessage("无/有"); List<String> sourceUrls = getSourceUrls(testChannel, pageContents);
pageRoute.setPicture(measure.getScreenshot()); List<PageRoute> allPageRoutes = getAllPageRoutes(pageRoutes, sourceUrls);
pageRoute.setResponseTime(measure.getResponseTime()); if (allPageRoutes != null && allPageRoutes.size() > 0) {
pageRoutes.add(pageRoute); List<PageRoute> collect = allPageRoutes.stream().distinct().collect(Collectors.toList());
} if (collect != null && collect.size() > 0) {
List<String> sourceUrls = getSourceUrls(testChannel, pageContents); evaReport.setPageRoutes(collect);
List<PageRoute> allPageRoutes = getAllPageRoutes(pageRoutes, sourceUrls); } else {
if(allPageRoutes!=null&&allPageRoutes.size()>0) { evaReport.setPageRoutes(null);
List<PageRoute> collect = allPageRoutes.stream().distinct().collect(Collectors.toList()); }
if (collect != null && collect.size() > 0) {
evaReport.setPageRoutes(collect);
} else { } else {
evaReport.setPageRoutes(null); evaReport.setPageRoutes(null);
} }
}else {
evaReport.setPageRoutes(null);
}
log.info("修改状态"); log.info("修改状态");
//改变报告状态 //改变报告状态
String out = JSON.toJSONString(evaReport); String out = JSON.toJSONString(evaReport);
log.info(id); log.info(id);
TestReport testReport = new TestReport(); TestReport testReport = new TestReport();
testReport.setResultId(id); testReport.setResultId(id);
testReport.setOutReport(out); testReport.setOutReport(out);
testReportService.update(testReport); testReportService.update(testReport);
autoResultSetService.updateByid(id, 1); autoResultSetService.updateByid(id, 1);
WebSocketServer.sendInfo("1," + id, "sjq110"); WebSocketServer.sendInfo("1," + id, "sjq110");
return; return;
}
} }
log.info("评测失败"); log.info("评测失败");
autoResultSetService.updateByid(id, 2); autoResultSetService.updateByid(id, 2);
...@@ -376,5 +383,15 @@ public class TestTask { ...@@ -376,5 +383,15 @@ public class TestTask {
return allPageRoutes; return allPageRoutes;
} }
public Report testSelenium(){
System.setProperty("webdriver.chrome.driver", "C:\\Users\\Jey\\Downloads\\chromedriver_win32\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
String baseUrl = "http://www.baidu.com/";
driver.get(baseUrl+"/");
WebElement inputBox = driver.findElement(By.id("kw"));
inputBox.sendKeys("CSDN");
driver.findElement(By.id("su")).click();
driver.quit();
return null;
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论