SquashTM is a web-based test management tool. We support multilingualization, but unfortunately we do not support Japanese. Also, like a natural right, the characters are garbled.
This time, I will build SquashTM to fix garbled characters and find out how to support Japanese.
There are some official sentences, but they are old.
Very old https://sites.google.com/a/henix.fr/wiki-squash-tm/developer/how-to-install-squashtm-project-into-eclipse
A little old https://bitbucket.org/nx/squashtest-tm/wiki/devguide/HowToInstallInIDE.md#!install-in-eclipse
Prepare the following. ・ Java 8 or above ・ Eclipse ・ Mvn3.3 or above ・ ToroiseHg (Distributed configuration management tool like Git)
The plugins to put in eclipse are as follows ・ Spring IDE
・ Groovy Development Tools
cd myeclipseworkspace
hg clone https://bitbucket.org/nx/squashtest-tm
cd squashtest-tm
mvn clean install -DskipTests -DskipITs
#The following may not be needed
cd provision
mvn clean install -DskipTests
The following error may occur.
Failed to execute goal com.mycila:license-maven-plugin:2.11:check"
In this case, execute the following command in the root folder.
mvn license:format
The following error may occur with mvn install of provision.
Non-resolvable parent POM for org.squashtest.tm:squash-tm-provision:[unknown-version]: Could not find artifact org.squashtest.tm:squash-tm:pom:1.19.0.RC3-SNAPSHOT and 'parent.relativePath' points at no local POM
This happens when parent in pom.xml in provision folder and pom.xml in parent folder are inconsistent. As of July 6, 2019, the following modifications were required
parent/pom.xml
<parent>
<groupId>org.squashtest.tm</groupId>
<artifactId>squash-tm</artifactId>
<version>1.19.0.RELEASE</version> <<<<<<The version here was inconsistent with my parents
<relativePath>../pom.xml</relativePath>
</parent>
Do the following in eclipse
1 Select [File]> [Import] from the menu 2 Cook [Maven]> [Existing Maven Project] 3 Select the folder created by "hg clone"
This work may not be necessary in the latest.
1 Select [Window]> [Settings] from the menu. 2 Select [Plugin Development]> [Target Platform] and press the "Add" button. 3 Select "Start with empty target definition" 4 Press the "Add" button on the target content 5 Select a directory. 6 Enter "squashtest-tm / provision / target / eclipse-provision / bundles" for the location. 7 Target content will be added, so enter the following values in the Arguments tab. Program arguments:
-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -console
** VM arguments: **
-Declipse.ignoreApp=true
-Dosgi.noShutdown=true
-Dorg.osgi.framework.system.packages.extra=com.sun.org.apache.xalan.internal.res,com.sun.org.apache.xml.internal.utils,
com.sun.org.apache.xpath.internal,com.sun.org.apache.xpath.internal.jaxp,com.sun.org.apache.xpath.internal.objects,com.sun.javadoc,
com.sun.tools.javadoc,javax.xml.namespace
-Dbundles.configuration.location="${workspace_loc}/squashtest-tm/provision/target/config"
-Dorg.osgi.service.http.port=9090
-Dorg.osgi.service.http.port.secure=9443
1 Select [Run]> [Run Configuration] from the menu. 2 Right-click [Spring Boot Application] on the execution configuration screen and press the "New" button. 3 Enter a value on each tab ** Spring Boot tab **
・ Project: tm.web ・ Main type: org.squashtest.tm.SquashTm -Profile: h2, dev
** Argument tab **
Program arguments: -XX: MaxPermSize = 256m -Xmx1024m
** Classpath tab **
① After selecting "User Entry", press the "Expansion Button" ② Select "Add Folder" ③ Enter "tm.web/target/wro4j-spring-boot"
Since the execution configuration is set in the Spring IDE settings, press the execute button there. Then access the following from your browser. (http://localhost:8080/squash
The startup sometimes failed. In this case, I tried the following. In addition, it seems that it is working even if there is an exception in the log
Try erasing the database once ・ Tm \ data \ squash-tm.mv.db ・ Tm \ data \ squash-tm.trace.db
Try "mvn clean install".
Japanese characters are garbled when associating test cases with the test suite.
The cause is that contentType is not set in jsp. Modify as follows.
jsp:tm\tm.web\src\main\webapp\WEB-INF\jsp\page\campaign-workspace\show-test-suite-test-plan-manager.jsp
<%@ taglib prefix="authz" tagdir="/WEB-INF/tags/authz"%>
↓ Add this
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<c:url var="testSuiteUrl" value="/test-suites/${ testSuite.id }" />
Since there are some pages that are quite garbled, it is better to review whether the encode is specified for jsp, but only error.jsp has the character code specified, so I left it as it is.
If Japanese characters are garbled as a whole, it is considered that you made a mistake when creating the database and it does not support utf8.
SquashTM can support multiple languages by copying message resources.
The language is switched according to the language specified by the browser.
The method of placing the created war on the server is as follows
1 Renamed tm / tm.web / target / tm.webXXXXXXX.war to squash-tm.war 2 Stop the service with "sudo service squash-tm stop" 3 For CentOS7, copy to "/ usr / lib / squash-tm / bundles /" 4 Resume service with "sudo service squash-tm stop"
By the way, the log is below, so you should monitor it around tail -f. /var/log/squash-tm/squash-tm.log
Now you can fix any bugs in SquashTM on your own. It's safe even if there are bugs! (Pride)
Recommended Posts