103 After running this command generated file can be found from <temp.build.dir>/<build.id>_cenrep_includefile.txt |
104 After running this command generated file can be found from <temp.build.dir>/<build.id>_cenrep_includefile.txt |
104 |
105 |
105 |
106 |
106 .. include:: stage_integration.rst.inc |
107 .. include:: stage_integration.rst.inc |
107 |
108 |
108 .. include:: stage_ats.rst.inc |
|
109 |
109 |
110 .. include:: stage_matti.rst.inc |
110 Stage: Testing |
|
111 ============== |
111 |
112 |
112 Stage: Check EPL License header. |
113 The test sources or test asset is mantained by test developers, who follow certain rules and standards to create the directory/file structure and writing the tests. |
113 ================================= |
114 |
|
115 Testing is performed automatically by ATS server which receives a zipped testdrop, containing test.xml file (required by ATS), ROM images, test cases, dlls, executbales and other supporting files. This testdrop is created by Helium Test Automation system. |
|
116 |
|
117 Read more: `Helium Test Automation User Guide`_ |
|
118 |
|
119 .. _`Helium Test Automation User Guide`: stage_ats.html |
|
120 |
|
121 |
|
122 |
|
123 |
|
124 Stage: Check EPL License header |
|
125 =============================== |
114 |
126 |
115 The target ``check-sf-source-header`` could be used to run to validate the source files for EPL license header. |
127 The target ``check-sf-source-header`` could be used to run to validate the source files for EPL license header. |
116 |
128 |
117 * Include the target ``check-sf-source-header`` in the target sequence. |
129 * Include the target ``check-sf-source-header`` in the target sequence. |
118 * This will validate source files present on the build area to contain EPL license. |
130 * This will validate source files present on the build area not to contain SFL license. |
|
131 * Target could be enabled by setting ``sfvalidate.enabled`` to ``true``. |
|
132 |
|
133 The target ``ido-check-sf-source-header`` could be used to run to validate the source files for EPL license header for IDO/Package level. |
|
134 |
|
135 * Include the target ``ido-check-sf-source-header`` in the IDO target sequence. |
|
136 * This will validate source files present on the build area to contain EPL license by extracting values from ``distribution.policy.S60`` files. |
|
137 * Target could be enabled by setting ``sfvalidate.enabled`` to ``true``. |
119 |
138 |
120 .. index:: |
139 .. index:: |
121 single: Compatibility Analyser (CA) |
140 single: Compatibility Analyser (CA) |
122 |
141 |
123 Stage: Compatibility Analyser |
142 Stage: Compatibility Analyser |
124 ============================= |
143 ============================= |
125 |
144 |
126 The Compatibility Analyser is a tool used to compare **binary** header and library files to ensure that the version being checked has not made any changes to the interfaces which may cause the code to not work correctly. Helium supplies a target that calls this Compatibility Analyser. Users who wish to use this tool first need to read the CA user guide found under SW DOcMan at: http://bhlns002.apac.nokia.com/symbian/symbiandevdm.nsf/WebAllByID2/DSX05526-EN/s60_compatibility_analyser_users_guide.doc. |
145 The Compatibility Analyser is a tool used to compare **binary** header and library files to ensure that the version being checked has not made any changes to the interfaces which may cause the code to not work correctly. Helium supplies a target that calls this Compatibility Analyser. |
|
146 Users who wish to use this tool first need to read the CA user guide found under: /epoc32/tools/s60rndtools/bctools/doc/S60_Compatibility_Analyser_Users_Guide.doc. |
127 |
147 |
128 The Compatibility Analyser is supplied as part of SymSEE, there is a wiki page for the tool found at http://s60wiki.nokia.com/S60Wiki/Compatibility_Analyser. As part of the configuration a default BC template file has been provided at Helium\tools\quality\CompatibilityAnalyser\config_template.txt make the necessary changes to this file (as described in the user guide). The supplied example file works with CA versions 2.0.0 and above which is available in SymSEE version 12.1.0 and above. The configurations that will need changing are: |
148 <#if !(ant?keys?seq_contains("sf"))> |
|
149 The Compatibility Analyser is supplied as part of SymSEE, there is a wiki page for the tool found at: http://s60wiki.nokia.com/S60Wiki/Compatibility_Analyser. |
|
150 </#if> |
|
151 As part of the configuration a default BC template file has been provided at helium/tools/quality/compatibility_analyser/ca.cfg.xml make the necessary changes to this file (as described in the user guide). The supplied example file works with CA versions 2.0.0 and above. |
|
152 |
|
153 The minimum configurations that will need changing are: |
129 * BASELINE_SDK_DIR |
154 * BASELINE_SDK_DIR |
130 * BASELINE_SDK_S60_VERSION |
155 * BASELINE_SDK_S60_VERSION |
131 * CURRENT_SDK_DIR |
156 * CURRENT_SDK_DIR |
132 * REPORT_FILE_HEADERS |
157 * REPORT_FILE_HEADERS |
133 * REPORT_FILE_LIBRARIES |
158 * REPORT_FILE_LIBRARIES |
134 |
159 |
135 The default configuration is supplied as part of tools\quality\CompatibilityAnalyser\compatibilty.ant.xml where there are a few properties that need to be set (overriding of these is recommended in your own config file): |
160 The default configuration is supplied as part of tools/quality/compatibility_analyser/compatibilty.ant.xml where there are a few properties that need to be set (overriding of these is recommended in your own config file): |
136 |
161 |
137 |
162 |
138 .. csv-table:: Compatibility Analyser Ant properties |
163 .. csv-table:: Compatibility Analyser Ant properties |
139 :header: "Property name", "Edit status", "Description" |
164 :header: "Property name", "Edit status", "Description" |
140 |
165 |
141 ":hlm-p:`ca.enabled`", "[must]", "Enables the bc-check and ca-generate-diamond-summary targets to be executed, when set to true." |
166 ":hlm-p:`ca.enabled`", "[must]", "Enables the bc-check and ca-generate-diamond-summary targets to be executed, when set to true." |
142 ":hlm-p:`bctools.root`", "[must]", "Place where the CheckBC and FilterBC tools are e.g. C:/APPS/carbide/plugins/com.nokia.s60tools.compatibilityanalyser.corecomponents_2.0.0/BCTools" |
167 ":hlm-p:`bc.prep.ca.file`", "[must]", "The name and location of the file that contains all the CA configuration values like, 'BASELINE_SDK_DIR=C:\Symbian\9.2\S60_3rd_FP1_2': an example file can be found at helium/tools/quality/compatibility_analyser/test/ca.cfg.xml " |
143 ":hlm-p:`default.bc.config`", "[must]", "Place where the CheckBC default configuration file is, it is copied from this location to the output folder for use by checkBC.py e.g. helium/tools/quality/compatibility_analyser/ca_config_template.txt" |
168 ":hlm-p:`bc.tools.root`", "[must]", "Place where the CheckBC and FilterBC tools are e.g. /epoc32/tools/s60rndtools/bctools" |
144 ":hlm-p:`bc.config.dir`", "[must]", "The bc_config_template.txt file (default configuration file) will be copied from the folder it is saved in within helium to the location named in this property where it will be used ( in conjunction with the bc.config.file property). e.g. build.log.dir/bc" |
169 ":hlm-p:`bc.build.dir`", "[must]", "The place that all the files created during the running of the CA tool will be placed." |
145 ":hlm-p:`bc.config.file`", "[must]", "The bc_config_template.txt file (default configuration file) will be copied from the folder it is saved in within helium to the location named and named as defined in this property where it will be used. You need to make sure this is not the same name as any other IDO or person using the build area. e.g. bc.config.dir/bc.config" |
170 ":hlm-p:`bc.config.file`", "[must]", "The 'ca.ant.config.file' file (configuration file) will be copied from the folder it is saved in within helium to the location named as defined in this property where it will be used. You need to make sure this is not the same name as any other IDO or person using the build area. e.g. bc.config.dir/bc.config" |
146 ":hlm-p:`bc.check.libraries.enabled`", "[must]", "Enables the Binary Comparison for libraries when set to 'true'." |
171 ":hlm-p:`bc.check.libraries.enabled`", "[must]", "Enables the compatibility analyser for libraries when set to 'true' (default value is 'false')." |
147 ":hlm-p:`lib.param.val`", "[must]", "Defines the parameter that checkBC.py is called with -la (all libraries checked) or -ls lib (single library checked) (lib = the name of library to check) or -lm file.name (multiple libraries checked) the file.name is a file that contains the names of the library(ies) to be checked." |
172 ":hlm-p:`bc.lib.param.val`", "[optional]", "Defines the parameter that checkBC.py is called with -la (all libraries checked) (default value) or -ls lib (single library checked) (lib = the name of library to check) or -lm file.name (multiple libraries checked) the file.name is a file that contains the names of the library(ies) to be checked. If the 'bc.what.log.entry.enabled' property is set this variable must not be set." |
148 ":hlm-p:`bc.check.headers.enabled`", "[must]", "Enables the Binary Comparison for headers when set to 'true'." |
173 ":hlm-p:`bc.check.headers.enabled`", "[must]", "Enables the compatibility analyser for headers when set to 'true' (default value is 'false')." |
149 ":hlm-p:`head.param.val`", "[must]", "Defines the parameter that checkBC.py is called with -ha (all headers checked) or -hs file (single header checked) (file= name of header file to check) or -hm file.name (multiple headers checked) the file.name is a file that contains the names of the header(s) to be checked" |
174 ":hlm-p:`bc.head.param.val`", "[optional]", "Defines the parameter that checkBC.py is called with -ha (all headers checked) (default value) or -hs file (single header checked) (file= name of header file to check) or -hm file.name (multiple headers checked) the file.name is a file that contains the names of the header(s) to be checked. If the 'bc.what.log.entry.enabled' property is set this variable must not be set." |
150 ":hlm-p:`bc.check.report.id`", "[must]", "Adds this to the CA output file name to give it a unique name." |
175 ":hlm-p:`bc.check.report.id`", "[must]", "Adds this to the CA output file name to give it a unique name." |
151 ":hlm-p:`ido.ca.html.output.dir`", "[must]", "Defines the location of CA output and the input for the diamonds creation target. e.g. build.log.dir/build.id_ca" |
176 ":hlm-p:`bc.log.file.to.scan`", "[must]", "This must be set if the 'bc.what.log.entry.enabled' property is set otherwise it is not required. It is the name of the log file that was created during the build that will be scanned in order to determine which headers or library files will be compared." |
|
177 ":hlm-p:`bc.what.log.entry.enabled`", "[optional]", "If set to true the 'whatlog' will be scanned for the list of header and/or library files that will be compared. The default is 'false'" |
|
178 ":hlm-p:`bc.fail.on.error`", "[optional]", "If set to true the build will fail if there is an error with the binary compatibility analyser (including the conversion to diamonds XML files). If set to false it will not fail the build if there is a problem with CA." |
152 |
179 |
153 and then run the target: |
180 and then run the target: |
154 |
181 |
155 :: |
182 :: |
156 |
183 |
157 hlm -Dbuild.number=nnn -Dbuild.drive=n: bc_check |
184 hlm -Dbuild.number=nnn -Dbuild.drive=n: bc_check |
158 |
185 |
159 where nnn is the build number and n: is the substed drive letter. |
186 where nnn is the build number and n: is the substed drive letter. |
160 |
187 |
161 The results of the output from the analysis are placed in the \output\logs\BC folder under the substed build drive and are called libraries_report_?.xml and headers_report_?.xml, the reports can be viewed in Web-formatted layout, based on the BBCResults.xsl stylesheet which is copied to the \output\logs\BC folder on the build drive. |
188 The results of the output from the analysis are placed in the /output/logs/bc folder under the substed build drive and are called 'libraries_report_{bc.check.report.id}' and 'headers_report_{bc.check.report.id}', the reports can be viewed in Web-formatted layout, based on the BBCResults.xsl stylesheet which is copied to the /output/logs/bc folder on the build drive. |
162 |
189 |
163 |
190 By running the target 'ca-generate-diamond-summary' the output is summarised and passed to diamonds where is is displayed in the 'Quality Aspects' section. |
164 .. include:: stage_final.rst.inc |
|
165 |
|