-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtutorial-90-roadmap.html
executable file
·86 lines (71 loc) · 6.38 KB
/
tutorial-90-roadmap.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Tutorial: Suman roadmap and upcoming efforts</title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Tutorial: Suman roadmap and upcoming efforts</h1>
<section>
<header>
<h2>Suman roadmap and upcoming efforts</h2>
</header>
<article>
<p>The following features are currently in the works, mostly planned for a 2.0.0 version of Suman:</p>
<ol>
<li><p>Provide a web interface to see test results over time. That means we will store test results in SQLite, and use Suman
Server to deliver test results to the browser. This feature was started but not completed yet. Ideally, only
one instance of Suman Server will run on any machine. Suman Server will be responsible for both file watching as well
as delivering the web page locally.</p>
</li>
<li><p>Add more fun reporters. The 2 reporters Suman currently has are utilitarian and verbose. We will add
some more reporters as we go. You can always create your own, see:</p>
</li>
</ol>
<ol>
<li>Support other languages besides JS. The 1.x version of Suman will use Node.js standard IPC to communicate with child processes.
This very much limits Suman to only using JavaScript/Node.js for running tests. Even though there will never
be first-class support for this, we'd like to allow users to write tests in Golang, Python, Java, etc, and also the browser!
Users can use the Suman runner to run tests in any language, as long as the other processes can communicate effectively
with the Suman API, most likely using Websockets.</li>
</ol>
<p>In order to communicate with processes running in another language, we will most likely have to use Websockets for IPC,
not the UNIX socketpair approach that Node.js uses out of the box. In order to support running tests in other languages,
Suman will have to rely heavily on the community to develop test runners that adhere to the Suman runner API. Basically,
the test file in Python, Golang, Java, etc, can be in any format, but they will need
to implement Websockets and communicate with the Suman test runner.</p>
<ol>
<li>Support observables. As this area of Node and JS congeals, Suman will make observables a first-class citizen
alongside promises and callbacks, event-emitters, etc.</li>
</ol>
<ol>
<li>Improve grouping of tests, so that test groups can easily run on multiple machines.
Right now, Suman is <em>not</em> designed to run different Suman groups on different machines.
Suman groups will basically override any behavior given by suman.order.js.</li>
</ol>
<ol>
<li>Optimize suman.order.js => Optimize the order in which tests run, according to
suman.order.js; also, allow for better randomization of test order.</li>
</ol>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Tutorials</h3><ul><li><a href="tutorial-00-about.html">About Suman</a></li><li><a href="tutorial-01-getting-started.html">Getting Started with Suman</a></li><li><a href="tutorial-02-simple-examples.html">Simple Examples</a></li><li><a href="tutorial-03-high-level-overview.html">Higher Level Overview</a></li><li><a href="tutorial-04-command-line-options.html">Command line options</a></li><li><a href="tutorial-05-advanced-use.html">Advanced Use</a></li><li><a href="tutorial-06-suman-config-file.html">06-suman-config-file</a></li><li><a href="tutorial-07-suman-patterns-and-recipes.html">Suman Patterns and Recipes</a></li><li><a href="tutorial-08-suman-anti-patterns.html">Suman Anti-Patterns</a></li><li><a href="tutorial-09-suman-reporters.html">Suman reporters and creating custom reporters</a></li><li><a href="tutorial-10-dependency-injection.html">10-dependency-injection</a></li><li><a href="tutorial-11-advanced-installation.html">Advanced installation of Suman</a></li><li><a href="tutorial-12-using-suman-with-babel.html">Using Suman with Babel</a></li><li><a href="tutorial-13-test-dir-organization.html">How to organize your test directory</a></li><li><a href="tutorial-14-debugging-suman.html">How to debug Suman tests</a></li><li><a href="tutorial-15-testing-child-processes-with-suman.html">Testing and debugging processes that spawn child processes</a></li><li><a href="tutorial-16-using-spies-with-suman.html">Using test spies with Suman</a></li><li><a href="tutorial-17-suman-server-and-web-reporter.html">About Suman server and built-in web reporter</a></li><li><a href="tutorial-18-tips-and-tricks.html">Tips and tricks</a></li><li><a href="tutorial-19-converting-from-mocha.html">Converting from Mocha to Suman</a></li><li><a href="tutorial-21-running-suman-against-shell-scripts.html">21-running-suman-against-shell-scripts</a></li><li><a href="tutorial-22-case-studies.html">22-case-studies</a></li><li><a href="tutorial-22-programmatic-usage-and-macros.html">22-programmatic-usage-and-macros</a></li><li><a href="tutorial-27-suman-best-practices.html">Best practices with Suman</a></li><li><a href="tutorial-30-anatomy-of-suman-suite.html">Anatomy of Suman Test Suites</a></li><li><a href="tutorial-31-workflows-with-suman.html">Workflows with Suman => Watchers and transpilation</a></li><li><a href="tutorial-40-integrating-with-ci-cd.html">Integrating with CI/CD</a></li><li><a href="tutorial-41-suman-exit-codes.html">List of Suman exit codes</a></li><li><a href="tutorial-42-hidden-secret-features.html">Some secret / hidden features of Suman</a></li><li><a href="tutorial-50-suman-parallelism.html">Complete explanation of Suman parallelism</a></li><li><a href="tutorial-70-usage-with-code-coverage-tools.html">Usage with code coverage tools (namely Istanbul)</a></li><li><a href="tutorial-90-roadmap.html">Suman roadmap and upcoming efforts</a></li><li><a href="tutorial-99-faq.html">FAQ</a></li><li><a href="tutorial-advanced-parallelization-2.html">advanced-parallelization-2</a></li></ul>
</nav>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.3</a> on Wed Feb 08 2017 22:39:23 GMT-0800 (PST)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>