JIRA 4.2.4数据导入到Mantis测试用例(初步):
package com.capitalbio.soft.test.bug; import java.math.BigDecimal; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Date; import java.util.concurrent.atomic.AtomicInteger; import org.apache.commons.dbcp.BasicDataSource; import org.apache.commons.lang3.StringUtils; import org.junit.Test; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.PreparedStatementCreator; import org.springframework.jdbc.core.RowMapper; import org.springframework.jdbc.support.GeneratedKeyHolder; import org.springframework.jdbc.support.KeyHolder; public class JiraToMantisTest { private static String driverName = "com.mysql.jdbc.Driver"; private static String url_jira = "jdbc:mysql://192.168.6.250:3306/jira?useUnicode=true&characterEncoding=utf-8"; private static String url_mantis = "jdbc:mysql://192.168.6.250:3306/mantis_jira?useUnicode=true&characterEncoding=utf-8"; private static String user = "root"; private static String password = "root"; /* static { try { Class.forName(driverName); } catch (Exception e) { e.printStackTrace(); } } */ public static BasicDataSource getDataSource(String url) { BasicDataSource dataSource = new BasicDataSource(); dataSource.setDriverClassName(driverName); dataSource.setUrl(url); dataSource.setUsername(user); dataSource.setPassword(password); return dataSource; } @Test public void testJiraToMantis() { final JdbcTemplate jiraJdbcTemplate = new JdbcTemplate(getDataSource(url_jira)); final JdbcTemplate mantisJdbcTemplate = new JdbcTemplate(getDataSource(url_mantis)); String sql = "select * from jiraissue "; final String insert_mantis_bug_table_sql = "INSERT INTO mantis_bug_table ( project_id, reporter_id, handler_id, duplicate_id, priority, severity, reproducibility, STATUS, resolution, projection, eta, bug_text_id, os, os_build, platform, VERSION, fixed_in_version, build, profile_id, view_state, summary, sponsorship_total, sticky, target_version, category_id, date_submitted, due_date, last_updated ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);"; final String insert_mantis_bug_text_table_sql = "INSERT INTO mantis_bug_text_table (description, steps_to_reproduce, additional_information) VALUES (?, '', '')"; final AtomicInteger total = new AtomicInteger(0); jiraJdbcTemplate.query(sql, new RowMapper<Object>(){ @Override public Object mapRow(ResultSet rs, int idx) throws SQLException { final String description = null!=rs.getString("description") ? rs.getString("description") : ""; KeyHolder keyHolder = new GeneratedKeyHolder(); mantisJdbcTemplate.update(new PreparedStatementCreator() { @Override public PreparedStatement createPreparedStatement(Connection conn) throws SQLException { PreparedStatement ps = conn.prepareStatement(insert_mantis_bug_text_table_sql, Statement.RETURN_GENERATED_KEYS); ps.setString(1, description); return ps; } },keyHolder); Integer bug_text_id = keyHolder.getKey().intValue(); /*.execute(String.format(insert_mantis_bug_text_table_sql,description), new PreparedStatementCallback<Integer>() { @Override public Integer doInPreparedStatement(PreparedStatement ps) throws SQLException, DataAccessException { ps.executeupdate ResultSet rs = ps.getGeneratedKeys(); if(rs.next()) return rs.getInt(1); return null; } });*/ BigDecimal proj_id = rs.getBigDecimal("PROJECT"); int project_id = (10000==proj_id.intValue()) ? 1:2; Integer reporter_id = StringUtils.isNotBlank(rs.getString("reporter")) ? mantisJdbcTemplate.queryForInt("SELECT id FROM mantis_user_table WHERE username=?", rs.getString("reporter")) : null; Integer handler_id = StringUtils.isNotBlank(rs.getString("assignee")) ? mantisJdbcTemplate.queryForInt("SELECT id FROM mantis_user_table WHERE username=?", rs.getString("assignee")) : null; int duplicate_id = 0; int priority = 30; int severity = 50; int reproducibility = 10; int status = 90; int resolution = 20; int projection = 10; int eta = 10; // bug_text_id; String os = ""; String os_build = ""; String platform = ""; String version = ""; String fixed_in_version = ""; String build = ""; int profile_id = 0; int view_state = 10; String summary = rs.getString("summary"); int sponsorship_total = 0; int sticky = 0; String target_version = ""; int category_id = 1; String dateSubmitted = Long.toString(rs.getDate("CREATED").getTime()); int date_submitted = Integer.parseInt(dateSubmitted.substring(0, dateSubmitted.length()-3)); //1379820334; int due_date = 1; String lastUpdated = Long.toString(rs.getDate("UPDATED").getTime()); int last_updated = Integer.parseInt(lastUpdated.substring(0, lastUpdated.length()-3));//1379820334; total.addAndGet(mantisJdbcTemplate.update(insert_mantis_bug_table_sql, project_id, reporter_id, handler_id, duplicate_id, priority, severity, reproducibility, status, resolution, projection, eta, bug_text_id, os, os_build, platform, version, fixed_in_version, build, profile_id, view_state, summary, sponsorship_total, sticky, target_version, category_id, date_submitted, due_date, last_updated)); return null; } }); System.out.println("----------------" + total.get()); } @Test public void testDate() { // 1384926801922 // 1384926882 String ret = Long.toString(new Date().getTime()); System.out.println(ret.substring(0, ret.length()-3)); } }
相关推荐
jira批量导入用例工具
它涉及到在JIRA中进行测试计划、测试用例管理、缺陷跟踪、版本控制、团队协作等工作的综合管理。标签强调了JIRA在测试管理和工程管理方面的应用。 通过上述详细的知识点介绍,可以全面了解如何在JIRA中进行测试用例...
(50条消息) 测试用例管理工具SynapseRT(jira插件)的具体使用(一)_Iam玉米的博客-CSDN博客_jira测试用例管理.mhtml
最后,测试用例的管理涉及从创建到执行再到更新的整个生命周期。这包括版本控制,确保不同版本的测试用例与相应软件版本对应;优先级排序,决定哪些测试用例先执行;状态跟踪,记录每个测试用例的执行结果;以及维护...
将Xmind测试用例转为Excel,可以方便地集成到现有的项目管理工具中,如JIRA或Trello,提高团队协作效率。 "软件测试"是一个涵盖广泛的概念,包括单元测试、集成测试、系统测试和验收测试等。在这个过程中,测试用例...
在软件开发过程中,测试用例是确保产品质量的关键文档之一。软件测试用例Word模板提供了一种规范化的格式,用于详细记录测试步骤、预期结果以及实际结果,帮助测试人员系统地执行测试并评估软件功能的正确性。下面...
在实际操作中,可以使用电子表格、专门的测试管理工具(如JIRA、TestRail等)或者敏捷开发框架(如Scrum、Kanban)来维护测试用例。这些工具可以帮助跟踪用例的状态,记录每次执行的结果,并提供版本控制,以便历史...
- **等价类划分**:将输入数据划分到不同的等价类,只需为每个类选择一个代表性的测试用例。 - **边界值分析**:关注边界条件,因为它们往往是错误最易发生的地方。 - **因果图法**:通过因果关系图表来确定各种...
使用工具(如TestRail、JIRA等)进行测试用例的创建、组织、执行和维护,可以提高效率,确保测试流程的标准化。 总结,测试用例的编写是一项关键的软件质量保证活动,需要细致入微的思考和精心设计。通过本培训...
在IT行业中,测试用例是确保软件质量的关键环节,尤其是对于机票信息管理系统这样的应用,它涉及到用户预订、查询、管理等多个重要功能。测试用例设计的目的在于全面验证系统的功能,确保其符合用户需求并能稳定运行...
此外,测试用例管理工具如TestRail、Jira等可以帮助组织和跟踪测试用例,提高测试效率。 总结来说,测试用例是软件测试中的关键工具,它确保了软件的质量和稳定性。通过遵循一个详细的模板,可以有效地设计出覆盖...
测试用例设计是软件质量保证的关键环节,Checklist是一款专为这一目的而设计的工具,旨在帮助测试工程师高效地创建、管理和执行测试用例。在本文中,我们将深入探讨Checklist的功能、使用方法以及它如何优化测试过程...
在实际操作中,测试团队会依据这些测试用例执行测试,并通过工具如JIRA、TestRail等进行管理,跟踪每个用例的状态,直至所有问题解决,确保后台管理项目第一期功能的高质量交付。通过持续的测试迭代和优化,可以不断...
1. 创建:使用专业的测试用例管理工具,如JIRA、TestRail等,便于组织和跟踪。 2. 执行:按优先级和关联性执行测试用例,记录结果。 3. 更新:随着软件迭代,及时更新测试用例以适应新功能。 4. 回归测试:每次修改...
使用专门的测试管理工具,如Jira、TestRail等,来组织、执行和跟踪测试用例,以实现高效管理。 6. **自动化测试用例**: 对于重复性高或执行时间长的测试用例,可以编写自动化脚本,利用工具如Selenium、Appium等...
测试用例是测试过程中的核心组成部分,它是描述如何对软件进行测试的一系列有序步骤,包括输入数据、预期结果以及执行这些步骤的条件。一个有效的测试用例应该具备可重复性、独立性和明确的结果判定标准。测试用例的...
在实际工作中,我们使用不同的工具来管理测试用例,如Excel、TestRail、Jira等,它们提供了模板和自动化功能,帮助我们高效地创建、组织和执行测试用例。 此外,我们还要了解不同的测试类型,如功能测试、性能测试...
测试用例是描述如何对软件进行测试的一组条件或步骤,它包括输入数据、预期结果和执行步骤。设计有效的测试用例需要注意以下几点: 1. **全面性**:覆盖所有可能的输入情况和边界条件。 2. **独立性**:每个测试...