blob: ab45d859ea9b712af42e54291139d9ecc8a2b041 [file] [log] [blame]
<!DOCTYPE html>
<head>
<title>RCPTT Blog</title>
<meta charset="UTF-8">
<link rel="stylesheet" href="https://www.eclipse.org/rcptt/shared/css/bootstrap.min.css">
<link rel="stylesheet" href="https://www.eclipse.org/rcptt/shared/css/main.css">
<link rel="stylesheet" href="https://www.eclipse.org/rcptt/shared/css/prism.css">
<link rel="icon" href="https://www.eclipse.org/rcptt/shared/img/favicon.ico">
<link rel="alternate" type="application/atom+xml" href="https://www.eclipse.org/rcptt/blog/atom.xml" title="RCP Testing Tool Blog"/>
<script src="https://www.eclipse.org/rcptt/shared/js/jquery.min.js"></script>
<script src="https://www.eclipse.org/rcptt/shared/js/bootstrap.min.js"></script>
<script src="https://www.eclipse.org/rcptt/shared/js/prism.js"></script>
<script src="https://www.eclipse.org/rcptt/shared/js/ecl.js"></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-39589807-5', 'eclipse.org');
ga('send', 'pageview');
</script>
</head>
<body>
<div id="before-footer">
<header>
<nav class="navbar navbar-default navbar-static-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a href="https://www.eclipse.org/rcptt/blog"><span class="navbar-brand">RCPTT Blog</span></a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li >
<a href="https://www.eclipse.org/rcptt/blog/">Latest Entries</a>
</li>
<li >
<a href="https://www.eclipse.org/rcptt/blog/categories">Categories</a>
</li>
<li >
<a href="https://www.eclipse.org/rcptt/blog/tags">Tags</a>
</li>
<li>
<a href="http://eclipse.org/rcptt">Back to RCPTT Main Site</a>
</li>
<li>
<a href="http://eclipse.org">Eclipse.org</a>
</li>
</ul>
</div>
</nav>
</header>
<section class="content">
<div class="container">
<article>
<header>
<h2>RCPTT 1.5.3 Released</h2>
<small>Oct, 23, 2014 by Ivan Inozemtsev</small> </header>
<div>
<p>On October, 23, we released a new bugfix version of RCP Testing Tool. The complete list of fixed issues is savailable on <a href="https://projects.eclipse.org/projects/technology.rcptt/releases/1.5.3/bugs">1.5.3 release page</a>, and the latest version can be downloaded from <a href="https://www.eclipse.org/rcptt/download">Downloads</a> page. In this topic I would like to outline a couple of my favourite improvements.</p>
<h3 id="encryption-of-password-fields-during-recording-%28%7B%7Bm.bugzilla%28%22436965%22%29%7D%7D%29">Encryption of password fields during recording (<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=436965">#436965</a>)</h3>
<p>Now, if you type a password in a password field during recording, for example in a dialog like this</p>
<p><img src="https://www.eclipse.org/rcptt/shared/img/blog/1.5.3/passwords.png"/></p>
<p>Then recorded script would look like this:</p>
<p></p>
<pre data-line="5"><code class="language-ecl">&#x200b;with [get-window Preferences] {
with [get-window "Edit Proxy Entry"] {
get-editbox -after [get-label "User:"] | set-text ooo
get-editbox -after [get-label "Password:"]
| set-text [decrypt "Gd3oJsWozfDNuJuSAmjCmw=="] // !! &lt;--- decrypt
}
}
</code></pre>
<p><br/></p>
<p>So, the script does not store entered text directly, instead it records encrypted string as an argument to a special <code class="language-ecl">&#x200b;decrypt</code> command. During test case execution, this string is being decrypted and set into text field.</p>
<!-- break -->
<p>RCPTT IDE considers a text box to be a password box if it either has <code class="language-java">SWT.PASSWORD</code> style bit, or <code class="language-java">Text.getEchoChar() != '\0'</code>.</p>
<p>This feature is useful is to avoid storing of sensitive information in test cases in plain text, however this feature does not guarantee that a passwords cannot be restored in case when intruders have an access to both test cases and application-under-test.</p>
<p>Encryption is performed via symmetric algorythm, there's a hard-coded predefined key, which can be overriden by setting <kbd>org.eclipse.rcptt.cryptoKey</kbd> system property in AUT &ndash; the simplest way to do this is to add <kbd>-Dorg.eclipse.rcptt.cryptoKey=anystring</kbd> in AUT VM arguments.</p>
<h3 id="improved-assertions-of-text-editors-%28%7B%7Bm.bugzilla%28%22445403%22%29%7D%7D%29">Improved assertions of text editors (<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=445403">#445403</a>)</h3>
<p>Now, when text editor is selected in assertion view, it is possible to see which markers this editor has, including its line, type, text and associated ruler column.</p>
<p><img src="https://www.eclipse.org/rcptt/shared/img/blog/1.5.3/markers.png"/></p>
</div>
<p class="categories">
Categories:
<a href="https://www.eclipse.org/rcptt/blog/categories/news">news</a> </p>
<nav class="article">
<ul>
<li>Next: <a class="next" href="https://www.eclipse.org/rcptt/blog/2014/11/11/rcptt-blog-launched.html" title="RCPTT Blog launched"><span class="title">RCPTT Blog launched</span></a></li>
<li>Previous: <a class="previous" href="https://www.eclipse.org/rcptt/blog/2014/09/19/regression-testing.html" title="Regression Testing with RCP Testing Tool"><span class="title">Regression Testing with RCP Testing Tool</span></a></li>
</ul>
</nav>
<p><a href="https://www.eclipse.org/forums/index.php/t/852797/">Discuss</a> this article on forum.</p>
</article>
</div>
</section>
<script src="https://www.eclipse.org/rcptt/shared/js/main.js"></script>
</body>