Skip to content

Commit

Permalink
Merge branch 'v1.1' of https://github.com/metersphere/server into v1.1
Browse files Browse the repository at this point in the history
  • Loading branch information
AgAngle committed Jul 22, 2020
2 parents e32635e + 0e54e56 commit 2bc11e4
Show file tree
Hide file tree
Showing 11 changed files with 33 additions and 28 deletions.
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ ARG MS_VERSION=dev

RUN mkdir -p /opt/apps && mkdir -p /opt/jmeter

ADD backend/target/backend-1.0.jar /opt/apps
ADD backend/target/backend-1.1.jar /opt/apps

ADD backend/target/classes/jmeter/ /opt/jmeter/

ENV JAVA_APP_JAR=/opt/apps/backend-1.0.jar
ENV JAVA_APP_JAR=/opt/apps/backend-1.1.jar

ENV AB_OFF=true

Expand Down
4 changes: 2 additions & 2 deletions backend/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<artifactId>metersphere-server</artifactId>
<groupId>io.metersphere</groupId>
<version>1.0</version>
<version>1.1</version>
</parent>

<modelVersion>4.0.0</modelVersion>
Expand Down Expand Up @@ -376,4 +376,4 @@
<url>https://maven.pkg.github.com/metersphere/jmeter-plugins-for-apache-dubbo</url>
</repository>
</repositories>
</project>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import io.metersphere.base.domain.TestCase;
import io.metersphere.track.request.testcase.QueryTestCaseRequest;
import io.metersphere.track.dto.TestCaseDTO;
import io.metersphere.track.request.testcase.TestCaseBatchRequest;
import org.apache.ibatis.annotations.Param;

import java.util.List;
Expand All @@ -15,7 +16,7 @@ public interface ExtTestCaseMapper {

List<TestCaseDTO> listByMethod(@Param("request") QueryTestCaseRequest request);

List<TestCaseDTO> listBytestCaseIds(@Param("request") QueryTestCaseRequest request);
List<TestCaseDTO> listBytestCaseIds(@Param("request") TestCaseBatchRequest request);

TestCase getMaxNumByProjectId(@Param("projectId") String projectId);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -202,9 +202,9 @@
select test_case.*,api_test.name as apiName,load_test.name AS performName from test_case left join api_test on
test_case.test_id=api_test.id left join load_test on test_case.test_id=load_test.id
<where>
<if test="request.testCaseIds!=null and request.testCaseIds.size() > 0">
<if test="request.ids!=null and request.ids.size() > 0">
and test_case.id in
<foreach collection="request.testCaseIds" open="(" close=")" separator="," item="id">
<foreach collection="request.ids" open="(" close=")" separator="," item="id">
#{id}
</foreach>
</if>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,11 @@
import io.metersphere.performance.service.ReportService;
import org.apache.shiro.authz.annotation.Logical;
import org.apache.shiro.authz.annotation.RequiresRoles;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.util.List;

@RestController
Expand Down Expand Up @@ -112,11 +111,15 @@ public Pager<List<LoadTestReportLog>> logs(@PathVariable String reportId, @PathV
}

@GetMapping("log/download/{reportId}/{resourceId}")
public ResponseEntity<byte[]> downloadLog(@PathVariable String reportId, @PathVariable String resourceId) {
byte[] bytes = reportService.downloadLog(reportId, resourceId);
return ResponseEntity.ok()
.contentType(MediaType.parseMediaType("application/octet-stream"))
.header(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=\"jmeter.log\"")
.body(bytes);
public void downloadLog(@PathVariable String reportId, @PathVariable String resourceId, HttpServletResponse response) throws Exception {
try (OutputStream outputStream = response.getOutputStream()) {
List<String> content = reportService.downloadLog(reportId, resourceId);
response.setContentType("application/x-download");
response.addHeader("Content-Disposition", "attachment;filename=jmeter.log");
for (String log : content) {
outputStream.write(log.getBytes());
}
outputStream.flush();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

@Service
@Transactional(rollbackFor = Exception.class)
Expand Down Expand Up @@ -210,14 +211,13 @@ public List<LoadTestReportLog> getReportLogs(String reportId, String resourceId)
return loadTestReportLogMapper.selectByExampleWithBLOBs(example);
}

public byte[] downloadLog(String reportId, String resourceId) {
public List<String> downloadLog(String reportId, String resourceId) {
LoadTestReportLogExample example = new LoadTestReportLogExample();
example.createCriteria().andReportIdEqualTo(reportId).andResourceIdEqualTo(resourceId);
example.setOrderByClause("part desc");
List<LoadTestReportLog> loadTestReportLogs = loadTestReportLogMapper.selectByExampleWithBLOBs(example);

String content = loadTestReportLogs.stream().map(LoadTestReportLog::getContent).reduce("", (a, b) -> a + b);
return content.getBytes();
return loadTestReportLogs.stream().map(LoadTestReportLog::getContent).collect(Collectors.toList());
}

public LoadTestReport getReport(String reportId) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -110,9 +110,9 @@ public ExcelResponse testCaseImport(MultipartFile file, @PathVariable String pro
public void testCaseTemplateExport(HttpServletResponse response){
testCaseService.testCaseTemplateExport(response);
}
@GetMapping("/export/testCase/{testCaseIds}")
@PostMapping("/export/testcase")
@RequiresRoles(value = {RoleConstants.TEST_USER, RoleConstants.TEST_MANAGER}, logical = Logical.OR)
public void testCaseExport(HttpServletResponse response,QueryTestCaseRequest request){
public void testCaseExport( HttpServletResponse response,@RequestBody TestCaseBatchRequest request){
testCaseService.testCaseExport(response,request);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -310,7 +310,7 @@ private List<TestCaseExcelData> generateExportTemplate() {
return list;
}

public void testCaseExport(HttpServletResponse response, QueryTestCaseRequest request) {
public void testCaseExport(HttpServletResponse response, TestCaseBatchRequest request) {
EasyExcelExporter easyExcelExporter = null;
try {
easyExcelExporter = new EasyExcelExporter(TestCaseExcelData.class);
Expand All @@ -323,7 +323,7 @@ public void testCaseExport(HttpServletResponse response, QueryTestCaseRequest re
}
}

private List<TestCaseExcelData> generateTestCaseExcel(QueryTestCaseRequest request) {
private List<TestCaseExcelData> generateTestCaseExcel(TestCaseBatchRequest request) {
List<TestCaseDTO> TestCaseList = extTestCaseMapper.listBytestCaseIds(request);
List<TestCaseExcelData> list = new ArrayList<>();
SessionUser user = SessionUtils.getUser();
Expand Down
2 changes: 1 addition & 1 deletion frontend/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<parent>
<artifactId>metersphere-server</artifactId>
<groupId>io.metersphere</groupId>
<version>1.0</version>
<version>1.1</version>
</parent>

<modelVersion>4.0.0</modelVersion>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -292,9 +292,10 @@
},
exportTestCase() {
let config = {
url: '/test/case/export/testCase/' + [...this.selectIds],
method: 'get',
responseType: 'blob'
url: '/test/case/export/testcase',
method: 'post',
responseType: 'blob',
data: {ids: [...this.selectIds]}
};
this.result = this.$request(config).then(response => {
const filename = this.$t('test_track.case.test_case') + ".xlsx";
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>io.metersphere</groupId>
<artifactId>metersphere-server</artifactId>
<version>1.0</version>
<version>1.1</version>
<packaging>pom</packaging>

<parent>
Expand Down

0 comments on commit 2bc11e4

Please sign in to comment.