Automated UAT/functional tests on Swing applications without source code [closed] - java

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
Our team is now working on a big Swing application. Our job basically focuses on writing extensions to the existing framework. A typical job would be adding a new panel/ or adding a new tab with some extra functionalities that suit our need.
It seems FEST can help a lot in terms of unit-test our code. I am going to try it out this week. But the question here is if there is a way to do automated functional testing on the whole application. In another word, we do not only need to test our code but also the framework. After all, UAT is the most important part.
I am currently considering decompiling the jar files we got into source code then we can identify the components and then use FEST.
So, before I get started to give this approach a shot, I think I just ask for ideas and inspirations here. There must be people who have done similar things before. Would be nice if I could learn from the veterans who fought against this before .
Thanks,

In my view, Functional tests and unit tests are not well serviced by the same framework. For functional testing, I would recommend you look at QFTest, which understands Swing components, so you get a more stable test than a traditional click-and-keyboard playback mechanism, while still being at the functional level.

You could consider ReTest, which is a functional Swing test tool that comes with an interesting approach to regression testing and is packed with AI-based monkey testing.
It is going to be partly open source as well.
Disclaimer: I am the founder of the company creating ReTest.

Related

Using windowbuilder to learn swing. A bad idea? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
Improve this question
I started to play arround with windowbuilder and I have already built a few basic GUI programs. However, I was wondering if I'm doing myself a disservice by learning swing this way instead of building everything myself, without using any plugins? I do have a good understanding of what goes into building the whole GUI, but still, what's your opinion on the matter?
I usually give the same example. You can't teach someone to use a calculator before teaching him how to sum. I think it's important for you to get familiarized with most of the swing components and try to grasp the basics about them so you can code them easily.
WindowBuilder is very helpful for complex designs and components, but I think you should first know the fundamentals before switching to WindowBuilder. Many people would disagree with me because that extension makes life a lot easier but it's really important to know the basics in case someday you want to work somewhere without WindowBuilder or NetBeans, or even if you want to understand the code that the program is making for you.
So, to sum up: You can install WindowBuilder and use it to learn but keep in mind you may not get some VERY useful knowledge with this method. Also, analyze the code thoroughly to understand it and try not to over-use the tool.
I would recommend writing initially with your hands. After all, WindowBuilder and similar tools are designed to speed up development, use them if you understand what is inside. All the best!

How to write Junit test case for old java project? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
I am working on a very old application built using strut 1.1 in 2004. The complete application is made by combining three projects(common, web, and EJB) in Eclipse and all these three are packaged as.EAR file. So here the confusion where to fit the JUnit test cases for this type of structure.
Whether I should create a separate project for writing the test cases. If I create the separate project, I would add the above projects in the build path.
So what is the right way? Any suggestion would be appreciated.
Also, tell me about the way I can check the results on GUI that how many cases are passed and how many are failed.
First of all: in case you intend to write real JUnit unit tests for 14 year old code, the answer is: do not do that.
If at all, you should be using JUnit as environment to automate test case execution, which in this case should be "integration" or "functional" tests.
You see: the only reasonable argument to invest money in old, existing source code is: you intend to refactor/replace that solution with a new implementation. Then your one and only concern is that your new code behaves like the old one. From a functional point of view. It doesn't make sense to invest time/energy into unit testing units you intend to throw away soon.
Beyond that: do whatever works for you. Typically, it would be better to have a complete new project to avoid tampering anything existing.

What are the most advanced techniques to test Android projects? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I'm trying to learn a bit of Android, and I've been reading a lot of documentation and tutorials.
I decided to use what seemed at that moment the most straight path, and that was use Android Studio. The first hacking hours went OK, the IDE is something that I like and I was able to build some activities.
Now I want to make things more serious and start to unit test the application. I must confess that I'm incredibly lost between the different paths that people is following. Please, if any question or assertion is wrong, let me know.
The basic testing tools that Android provide, needs to be used launching the emulator. This makes the tests run slow.
The are other approaches like Roboelectric. They have done a huge work and it would let you launch the tests from the terminal with Gradle and you can get a faster cycle (Red, Green, Refactor). Anyway, there are known problems using it with Android Studio and if sometime I need to debug a test, I won't be able.
I feel like I'm struggling a lot with something that should be very basic. I guess that my lack of knowledge in Java isn't helping. Something that it would be great and desirable as features of my project would be:
Be able to run some tests (business logic) with jUnit. Those tests should be fast and it would be great to run them from the terminal and from the IDE.
Be able to have others, isolated, integration tests (as you can see in the Android documentation).
I would like to know how people who is working in big projects are dealing with this. Any link to better documentation that I found or guidance would be greatly appreciated.
Thanks!

In what scenario the framework should not be used? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I have the first meeting with my project manager and she assigned me a project which to be start soon. She explained to me few points related project e.g. technology, functionality, end user expectation etc.
MVC based web application
Not to use any framework
Server Side : use only Java, servlet, jsp
UI : Javascript, jQuery can also be used
integratation with existing project (at later stage)
There is one point i can not understand why she asked me to not to use any framework although i could not ask why. Does anybody clarify ? If i use any framework like spring then will it create any problem while integration with existing project.
I can recognize 2 sub questions in your question.
In what scenario the framework should not be used?
why she asked me to not to use any framework?
Answer 1
I can imagine situation when you don't need any framework. It is if you have to create extremely simple 1-2 screen application without any security, access rules and probably without DB based persistence. This means that IMHO framework-less application is good as a student exercise just to understand how things work.
Answer 2
She is ... not professional enough. I am sorry to say it but this is pretty obvious. To implement MVC without framework you have to perform a lot of dirty work. I believe that the key reason for this strange requirement is "integratation with existing project" that is probably created without any framework, so PM thinks that framework could bother you during this integration.
Moreover, product manager should never dictate R&D how to implement project. Project manager can politely ask to implement certain set of features.
I am sorry if my answer is helpful.

GWT code OR GWT Designer? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I am new to GWT. I have a question. Which way is better to learn/use GWT programming. Either to learn using GWT by writing code for creating user interface OR through GWT Designer? I am also aking this question in the context of good programming practices & industry requirements.
I agree that code is much better. Plus later on when you want to do more fine tuning of your UI, exact position up to the pixel level for example, I have found that the Designer is not very easy for aligning widgets. You will need to get down to the code level anyway to do so.
Another benefit like it was already mentioned is you will get a better understanding of what is going on.
In my opinion it's better to learn to code it from scratch. That way you get a much better understanding of what the underlying code does. Because you'll also have to consider supporting the GUI you develop as well. And if you use a designer, while it's a lot quicker, it'll add it's own code to it, and it may not be pure GWT code.
So in my opinion, code it by hand, sure it'll take longer, but you'll understand it better, and be able to support it. And it'll be another great skill to your bow.
I use a mixed solution. Designer for main blocks and code for details...
I would suggest to start with coding rather than the designer. From a learning point of view, coding gives more information regarding how you can use and extend functionality.
Client side scripting involves good styling, alignment which you will understand once you work via the code and scripts.

Categories

Resources