top-q / difido-reports Goto Github PK
View Code? Open in Web Editor NEWThis project aims to provide a generic implementation for HTML test reports.
Home Page: http://top-q.github.io/difido-reports
License: Apache License 2.0
This project aims to provide a generic implementation for HTML test reports.
Home Page: http://top-q.github.io/difido-reports
License: Apache License 2.0
URI preffix missing the host and port values.
Use the addResourceListener mechanism to get notified when even occurs and decide if serialization needs to take place (report should be created).
If it is. Checks if the destination folder is ready, copy the HTML resources if needed and serialize the model.
Extracting the HTML files from the jar for each new execution is taking too much time. The files should be extracted once from a template folder and from this stage they will be copied from this folder. In addition for saving time this also will allow users to create a customized HTMLs
Since we now have the meta data in the json file, there is longer need to keep this data in the folder names.
We can reduce code by using the commons-configuration library instead of implementing the services our own.
When the number of executions is exceeded the 2000 executions, populating the data table is taking much too long (about 17 seconds).
We need to rewrite the client side and make better use of the JQuery datatable plugin.
Received an exception from the server.
Exception message is attached.
Classes could register to receive events when a new resource is added to the system. This will allow us to device when to do the serialization to json
We need to have the ability to add more meta data to each execution. For start we should have a description for each one. It can be configured in the difido_remote.properties and should appear in the execution list instead of the time stamp.
In addition, while we are at it, we should consider doing some changes in the API. I am thinking about passing a properties object with all the information of the execution. It can hold the description but can also add some additional info like the user that executed it.
This change may break backward compatibility.
Users can now add key value properties to each execution. The HTML view of the execution should display this data.
We can use nested attributes
http://elasticsearch-users.115913.n3.nabble.com/How-to-map-a-dynamic-map-of-key-values-td4057450.html
This will allow us filter on it and later on, handle large scales better.
Machine name contains the host name which is not unique because sometimes people can clone VM machine and with the same host name.
MachineName property should contains both host name and IP address.
The difido_config.properties and the log4j.properties configuration files should be in a folder with name config in the assembly.
This should not break the support of reading the configuration files also when running the server from the IDE.
According to issue #20, when not specifying the server ip address at difido_config.properties, test's URL field is being published to elasticsearch with address 0.0.0.0 instead server's ip address.
For each error that occurred in the resource level, an exception from type WebApplicationException should be thrown. The exception should contain the a message for the user and a message for the programmer.
Add an additional column on the execution list with checkbox (a check all checkbox is also possible), and a delete execution button that will send a request to the server to delete all the selected executions.
An example for data table with checkboxes can be found here
A client that can be integrated in different systems should be implemented. The client should use the HTTP api. It is best if the HTTP calls would be wrapped in something an easy to use wrapper. We are going to consider using some kind of fluent api.
And consider change it name
Since the move to Spring boot and Logback, the data in the log is internal data of the Spring framework and not the data from the server implementation.
This is will make it easier to send the url of the HTML reports in the mail
I was playing with JSystem client remoteDifido.properties file.
I've changed append.to.existing.execution flag value to test the server execution behavior. In the fifth attempt of restarting JSystem client, it failed to launch (see Jsystem_client_log_file1).
When I've tried to kill difido-server and tried to launch Jsystem client again, I've received another exception (Jsystem_client_log_file2).
Both JSystem and Difido-server logs are attached.
Jsystem_client_log_file2.txt | uploaded via ZenHub
When running Jsystem for the first time, with Default scenario, new report is being created with Default scenario name.
When initializing the reports and running Default scenario again, the scenario name changed to Default(1) instead of Default.
The issue related for both reports: HtmlReporter and RemoteHtmlReporter.
Reproduction:
Add around 30 suites and load the dashboard (index.html)
Expected: All trends should show and dashboard loads as usual.
Actual: The trend graph cause the entire page to hang while loading.
Workaround: navigate to tree.html instead
Currently, it is hard to tell in the execution list, who is who and what is what.
There is a need to add a description or some other additional descriptive metadata to each execution and display it in the execution list.
Some of the information can be specified in the remoteDifido.properties file.
There is a need for a TestNG binder. There is already a local binder but we should implement a remote one too.
We need to find a way to make the server work without the need to specify the host name in the configuration file.
base_uri=http\://localhost\:8080/api/
In the json document that is inserted to the Kibana there is a URL field by it is not populated yet.
The current logic that is responsible for ending executions when the idle time out is reached is not suitable for the mail sending logic.
The server should have the option to use a configurable value for deleting old HTML reports.
User could configure how many days the reports should be saved.
User could select executions to be locked and not to be deleted
If users don't want that every client that publishes to the server would be able to add any property to the table, we should the option, in the server configuration file to filter the properties.
The Difido NUnit binder should include a configuration file that will allow the user to specify the host and port of the Difido server.
It should probably be some kind of an ini file that will be created by the binder in case none exists.
For example:
remote_difido.ini
[server]
host=192.168.50.55
port=8080
[behaviour]
appendToExistingExecution=true
enable=true
When I'm trying to run scenario using Jsystem maven plugin, the tests are not being published to difido-server.
Add support for sending mails at the end of the execution from the server. There should be a template file in the config files and the addresses should be specified in the properties file.
We should add more information on each execution and show it in the execution list view. The information can include:
Currently, if multiple executions will be created, all the reports will be messed up. We need to add to the ResourceAddedListener also the execution id and to use it in the HTMLViewGenerator class
When a new Execution folder being created, the former Execution Activation status is true instead of false.
Steps to reproduce:
JSystem remoteDifido.properties settings:
append.to.existing.execution=false
enabled=true
difido_config.properties:
enable_html_reports=true
base_uri=http://xxx.xxx.xxx.xxx:8080/api/
enable_elastic_search=true
max_execution_idle_time_in_seconds=20
doc_root_folder=docRoot
path_data=data/index
**Please note:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.