We are developing mobile games based on Adobe AIR and stage3D technology.
Is there any possibility to do unit tests, integrations tests, UI testing in such applications?
Are there any continues integration tools? Jenkins plugins or anything else?
After some researches we've found several tools for AS3 Unit testing but most of them are supposed to be used with FLEX apps.
Thanks.
Everything supposed to be used with flex - can be also used with pure as3 (of course I'm not talking about flex-specific libraries/framesworks, but most of them like Robotlegs or Parsley are pure-as3/mxml compatible).
So you can freely use Apache Flex compiler with Maven/graddle+flexmojos for CI, flexunit for unit testing (FlexPilot for UI tests, but not sure if it is ready-to use library for AIR, anyway it is open source, so you can adapt it to AIR)
Related
My Intention is to test the functional flows of the application. So i think best way is testing UI for the steps of the functional flow. (E.g : Add item, after search it and add pricing etc.). My concern is to find best automation tool which should support for desktop application. does anyone have handheld experience of doing this. As a coding guy i don't have experience in Testing.
Additionally: the application is huge application which have connected with oracle database. So it need to clear the database as startup of the testing. So tool should support this matter also.
Programming language : C#
I found Selenium (but this is only for web application), Renorex and IBM rational Functional Tester.
is my approach(test UI steps for Functional steps) correct? have any one work on above tools or any other best tools whcih support to C# windows application.
I think NUnit is best for text unit test in this project. am i correct? according to my research google i found this as result.
I'll try to keep it short. A good fit for you case
automation tool which should support for desktop application.
and
Programming language : C#
will be the VisualStudio's build in Coded UI test. All actions performed on the desktop will be recorded. Pause the recording if you are performing actions that may lead to sensitive data being included in the recording. When coded UI tests are automated, they have to interact with the desktop when you run them, unlike other automated tests.
As far as you try to keep the tests close to the Test pyramid
the QA effort should be acceptable and your
approach(test UI steps for Functional steps)
will be correct and feasible. In general try to avoid long and fragile tests, except for some E2E tests that will exercise the (most business valuable) end-user journeys.
With C# should be relatively easy to drop oracle database for your
need to clear the database as startup of the testing.
Such DB cleaning is often used Fixture strategy. Take a look at this Persistent Fixture. Usage of such DB fixtures can be put to work for all conditions that your UI tests expect/rely on (avoid UI setup for tests), example - create available and applicable bonuses.
Another way for your UI layer tests could be some of the .Net based Sikuli implementations:
SikuliSharp
SikuliIntegrator
sikuli4net
By backend I mean software systems that consume data, process files or communicate using machine interfaces (REST, SOAP, CORBA, etc...). No fancy web or UI testing is necessary. I have in mind Cucumber and Robotframework but I don't know how well suited they are in the task at hand.
There isn't an easy answer to this question.
Sounds like you got your domain right... because if you were trying to test UI/Web components acceptance testing frameworks make not be the right tool for the job.
You have a few options
SpecFlow
Cucumber
StoryTeller
FitNesse
mSpec
a few others.
I'm partial to StoryTeller & mSpec.. but each of these tools have their pros/cons.
Questions you should be asking yourself (and your team are)
Who is going to be writing/maintaining the tests?
Are self documenting acceptance tests provide value for your organization?
Which technology would integrate most easily with your current build process?
I have used Cucumber to test a batch application written in perl and plsql, an informatica transformation, and am currently using it to test a telephony ivr/queueing system. Ruby provided the gems I needed to drive the system and it was very easy for the testers to learn the language/syntax.
If it comes to Robot Framework I have an experience with bad support in Intellij for this. I'm using IntelliBot plugin. In many cases you will know your mistake like wrong syntax, cannot find keyword etc. late in test runtime.
Problems with finding imported libraries, no debug, no simple refactor like rename keyword across a project.
I'm using NUnit for testing back-end. Unit tests are being executed while building (I'm using TeamCity for continuous building).
Now I hove to test front-end (Silverlight 4.0). Because the tests are being executed while building, I have to simulate browser (TypeMock - is not free, isn't it?) could I use NUnit.Mocks somehow?. How to use NUnit for Silverlight testing? I've found WHITE framework could it help?
Any other advises about software/frameworks to use for Silverlight unit testing?
Check out StatLight...
"StatLight is a tool developed for automating the setup, running, and gathering results of Silverlight unit tests. StatLight helps to speed up the feedback cycles while practicing TDD/BDD/(insert your test style here) during Silverlight development."
http://statlight.net/
As an alternative, here is an nUnit port for Silverlight:
http://greenicicleblog.com/2010/04/27/nunit-for-silverlight-updated/
I would like to know what a Unit test and Web Test is in the .NET Framework and What are the difference between these tests? and How does it affect with the implementation of the CSLA.NET? Please help, thanks!
I guess you're referring to using MSTest under Visual Studio where they have two modes - testing of code or testing of web site via http calls.
When developing in .NET a developer can choose from several Unit Testing Frameworks such as MSTest - NUnit, MBUnit, XUnit etc. for more information have a look at this question.
The term Unit Testing refer to a broader field - you can read about it here.
Unit testing refers to the programmer writing simple small tests to verify his code actually work and as such does not effect the implementation of CLSA.NET.
I would like to know what a Unit test
and Web Test is in the .NET
Do you mean, what unit tesing frameworks are there for .NET ? I recommend you NUnit
What is currently the best tool for JavaME unit testing? I´ve never really used unit testing before (shame on me!), so learning curve is important. I would appreciate some pros and cons with your answer. :)
I think it will depend on what kind of tests are you planning to do. Will you be using continuous integration. Is running tests on handsets a must.
If tests are more logic/data processing tests, the you can do fine with JUnit. But if you need to use some classes from javax.microedition.*, then the things will become a bit tricky, but not impossible.
Some examples: a test for text wrapping on screen, that would need javax.microedition.lcdui.Font. You can't just crate a font class using jars shipped with WTK, because at initialization it will be calling some native methods, that are not available.
For these kind of tests I have created a stub implementation of J2ME. Basically these are my own interpretation of J2ME classes. I can set some preconditions there (for example every character is 5 pixels wide, etc). And it is working really great, because my test only need to know, how J2ME classes respond, not how they are internally implemented.
For networking tests I have used MicroEmulator's networking implementation, and it has also worked out well.
One more issue with unit tests - it is better to have your mobile projects as a java project using Java 4,5,6, because writing test in 1.3 is, at leas for me, a pain in the...
I belive, that starting with JUnit will be just fine, to get up and running. And if some other requirements come up (running tests on handsets), then You can explore alternatives.
I'll be honest, the only unit tester I've used in Java is JUnit and a child project for it named DBUnit for database testing... which I'm assuming you won't need under J2ME.
JUnit's pretty easy to use for unit testing, as long as your IDE supports it (Eclipse has support for JUnit built in). You just mark tests with the #Test annotation (org.junit.Test I think). You can also specify methods that should be run #Before or #After each test, as well as before or after the entire class (with #BeforeClass and #AfterClass).
I've never used JUnit under J2ME, though... I work with J2EE at work.
Never found an outstanding one. You can try to read this document :
how to use it
and here the link to : download it
Made by sony ericsson but work for any J2ME development.
And I would recommend you spend some time learning unit testing in plain Java before attacking unit testing on the mobile platform. This may be a to big to swallow one shoot.
Good luck!
There's a framework called J2MEUnit that you could give a try, but it doesn't look like it's still being actively developed:
http://j2meunit.sourceforge.net