[
https://issues.apache.org/jira/browse/SOLR-8474?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Upayavira updated SOLR-8474:
----------------------------
Attachment: SOLR-8474.zip
Attaching first pass at test frameworks for Admin UI. This patch includes both
unit test and functional test code, with a sample test for each.
Unpack this zip into the /solr dir, so that the files end up in /solr/webapp/.
The tests make use of npm to execute. Make sure that you have the latest NodeJS
installed (from the node website, not from brew or apt), then:
* for unit tests: npm test
* for functional tests: npm run protractor
This will create an instance of Chrome within which to execute the tests.
Note that the functional tests assume a core/collection called "index" which
has a field type of 'text_en'.
> Test Framework for functional testing Angular UI
> ------------------------------------------------
>
> Key: SOLR-8474
> URL: https://issues.apache.org/jira/browse/SOLR-8474
> Project: Solr
> Issue Type: Improvement
> Components: web gui
> Affects Versions: 5.4
> Reporter: Upayavira
> Assignee: Upayavira
> Attachments: SOLR-8474.zip
>
>
> The Solr UI has no tests. This is less than ideal. This ticket is aimed at
> facilitating discussion around such a test framework for
> functional/end-to-end testing components within the Angular UI.
> Having a unit testing framework will encourage developers of the UI to make
> more modular, and thus hopefully cleaner, code, as well as providing a means
> to identify regressions.
> For functional testing, I am proposing a Karma/Protractor/Jasmine combination.
> Karma runs the tests, as with the Unit testing framework, Protractor
> interacts with the pages effectively via a programmable browser (click here,
> enter there, confirm that) whilst Jasmine provides a BDD style syntax for
> constructing the tests themselves.
> My proposal is that, for functional tests, we will fire up a full Solr server
> via the existing test framework, then invoke Karma/Protractor within that
> context. That will mean that the functional tests will be interacting with a
> real Solr instance, presumably with real data in it.
> Karma/Protractor/Jasmine can be installed by npm, which would become a
> dependency for the Lucene/Solr build process, as for SOLR-8473.
> As with SOLR-8473, there will be a dependency on either Chrome (and a UI such
> as X) or a UI-less browser such as PhantomJS.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]