Saturday, 15 July 2017

8 Useful Tools/Frameworks for Java Testing

8 Useful Tools/Frameworks For Java Testing





1. JUnit

Without a doubt, JUnit is the most popular Java testing framework out there. The framework is open source and is widely used by Java developers for writing & executing unit test cases. JUnit has also been one of the major forces behind the adoption of test-driven development methodologies. JUnit comes as a packaged JAR (Java ARchive) library, and you can download junit.jar and hamcrest-core.jar files from GitHub before placing them in your test class path.
The Java testing framework is very simple to use, and provides annotations for test method identifications. Assertion is another exciting feature of JUnit which it uses to test the expected results. With JUnit, Java developers can quickly run unit tests and get instant results via red/green progress bar.
Although JUnit is a popular unit testing framework, it can also be used for integration and acceptance tests. So, you can easily integrate JUnit with standard IDEs, like eclipse and netbeans.
2. JWalk

JWalk is a Java testing tool that relies on Lazy, Systematic Unit Testing. The tool performs bounded exhaustive testing of any compiled Java class, supplied by the programmer.
Although JUnit enables to frequently retest the modified code, the manually created test scripts often remain incomplete. But that’s not the case with JWalk, which operates directly on the compiled code for Java classes and uses a new lazy method for inducing the changing design of a class on the fly. Besides, fully automated checking gradually takes over manual inspection of the test report.
For systematic testing, JWalk performs exhaustive testing of the whole state-space of the object to ensure compliance with the specification. The tool is smart enough to infer the specification from hints supplied by the programmer during the testing process, and from smart assumptions made about the intended design of the code.

3. Mockito


Mockito, an open source framework under MIT license, is one of the most famous mocking frameworks for Java. The reason why mocking frameworks have become popular is that they improve unit tests by removing the outside dependencies, thereby giving rise to better, faster, independent unit tests. Unlike other mocking frameworks, Mockito makes it possible to verify the behavior of the system under test (SUT) without setting up expectations in advance.
The existence of a robust coupling between the test code and the SUT often makes it difficult to deal with mock objects. However, Mockito minimizes the coupling by removing the expect-run-verify pattern through elimination of the expectations specification. Therefore, Mockito paves the way for simpler test code that is easier to read and modify.

4. TestNG


TestNG is a testing framework inspired from JUnit and NUnit, but it has more powerful and easy-to-use functionalities. TestNG was designed keeping in mind a broad testing spectrum: Unit, functional, end-to-end, integration, etc. Testers prefer TestNG over JUnit for mainly three reasons:
  • Easier understanding of annotations
  • Easier grouping of test cases
  • Enables parallel testing
Besides, various tools and plugins, like Eclipse, IDEA, Maven, etc, support TestNG. The NG means next generation. Other virtues of TestNG are flexible test configuration, support for data-driven testing, JDK functions for runtime and logging (without dependencies), code testing in a multi thread safe, etc.

5. JwebUnit

JwebUnit is a Java framework used for functional, Regression and Integration testing of web applications. The framework provides a simple interface for writing test cases, and is a good choice for screen navigation testing.
JwebUnit uses testing frameworks like HtmlUnit and Selenium to provide a unified, simple testing interface, thereby making it possible for you to quickly test the correctness of your web applications. If you want to use the latest version of JwebUnit, i.e. 3.3, you need to have the knowledge of latest Java

6. TagUnit

Similar to JUnit, TagUnit also has test cases, test suites and tests that are written as assertions. An important distinction to JUnit is that tests are written as JSP pages, not Java classes. JSP tags are either built-in or user-defined tag elements that remove a huge burden from JSP to separate reusable components.
Java classes are used to write the functionality of Tags. If you think that using JUnit is enough to test them directly, you’re wrong. Since they are not standalone classes, a JSP needs to be converted into Servlet to call the tag classes. This is another reason why TagUnit is also called a tag library for testing custom tags within JSP pages.

7. HTMLUnit

HTMLUnit, an open source library and a headless browser, is written in Java and is widely used for Integration testing. JSPs are designed to run inside the web container. However, HTMLUnit is well capable of testing the View part even without the container. Using Jasper, JSPs are first manually converted to Servlet class. And since the container is not running, simulation of the request and response behavior needs to be done. For this, one needs to create Mock objects of JSPWriter, PageContext, HTTPServletRequest and HTTPServletResponse.
It won’t be right to call HtmlUnit a generic unit testing framework. It simply provides a way to simulate a browser for testing purposes.

8. Arquillian


Arquillian is an integration testing framework for Integration and Functional testing of Java. Without any exaggeration, it’s a highly innovative and extendable testing platform for JVM. Arquillian offers testers the-much-needed ease in creating automated integration, functional and acceptance tests for Java.
The tool also rids the need of creating mock objects and removes the hassles of dealing with container lifecycle and deployment. Arquillian also integrates with other testing frameworks, like JUnit 4, TestNG 5, and launches tests using existing existing IDE.
The tech market is flooded with numerous Java testing tools. However, for this blog, I have picked the ones that are mostly used by Java developers and testers. I hope the list above helps you choose a Java testing tool that best fits your needs. Always remember, there is no good or bad tool. Based on functionalities and varied requirements, a Java testing framework that is good for someone may not be so good for you. So, make your decision after assessing your project requirements and acquainting yourself with all that’s on offer by a Java testing tool.


Sunday, 19 February 2017

TechnoSoft Informatics - An ISO 9001:2008 Certified Training & Development Centre




TechnoSoft Informatics-An ISO 9001:2008 Certified Training & Development Centre

Ø We Excel In Solving Complex Business & Project Challenges

Ø Stay up-to-Date With Best Practices & Industry Trends

Ø Non-Linear Growth & High Performance

Ø Cutting Edge Technologies For Tomorrow Innovation

Ø Optimizing Performance To Deliver The Result

Ø Get Training By Certified Industry Expert

Ø Focus On To Make You A Complete,Skillful & Perfect Professional







For More Information Please Visit: http://www.technosoftinformatics.com/

Dice's list of the top 10 software skills in demand



Dice's list of the top 10 software skills in demand :
In the software development industry, new technologies are emerging in a fast-paced manner. Staying ahead in the tech market is very important for every programmer, moreover as the trends in programming are the same as in the other industries, with changing necessities and new in-demand programming languages for the next years.
1. Java/Java Enterprise Editions developers(J2EE Developers)/Java Cloud Developers
2. Software developers/engineers(in specific technology)
3. Mobile developers(Android / IOS)
4. Project Managers
5. .NET developers
6. Web & Python developers
7. System engineers/administrators
7. Network engineers/administrators
9. SAP professionals
10. Business analysts

The Complete Android Activity Fragment Scenario


Cloud Scene


Level Of Big Data Maturity


The New Industrial Revolution


A Snapshot of SQL


WiFi & LiFi Technology


Thursday, 17 December 2015

Top Coders/Programmers/Developers Programming Weapon: JAVA

Top Coders/Programmers/Developers Programming Weapon: JAVA

When 80,000 coders from 9,000 IT companies were given a chance to fight the TechGig Code Gladiators 2015 battle using a weapon of their choice i.e. a programming language they love, we realized that Java is the love of their life. Contestants preferred Java over 9 other programming languages, which includes: C, C++, C#, PHP, Java Script, Python, Perl, Ruby and VB.net.


TechGig Code Gladiators is a national level competition that showcases the company with the best coders and identifies the Best Coder in the Country.


In the initial online rounds of the Code Gladiators 2015, the top 100 coders battled it out face-to-face in the grand finale to win coveted titles and prize money of Rs 6 lakhs. And at the finale, when India got its five best coders, Java emerged as the most popular coding language among the top coders.


Apurv Gupta from Oracle (the winner), Surender Godara from SapientNitro (first runner-up), Victor Hoh from AWPL (second runner-up), Ankit Vij from Cvent India Pvt Ltd (fourth runner-up) and Hina Bhatia from Steria (TechGig Code Diva and best women coder) - all chose Java as their preferred language to sail through the contest.


"One thing all skilled coders agree on is that they love familiarity. When it's time to write for heavyweight and scalable enterprise applications, techies reach for their most comfortable tool. Thanks to years of unrelenting backward compatibility, Java is that tool." says Vivek Madhukar, COO, TimesJobs.com


Speaking to TechGig after the finale, Surender Godara from SapientNitro said that for the first two virtual rounds, he was coding in C language but the final problems were so tough he had to switch to Java.


Only the third runner-up, Sonu Singal from Algoworks Technologies, was the lone winner to code in C# (C sharp) in the grand finale of Code Gladiators.


Similar to the 2014 edition of TechGig Code Gladiators, majority of the participants of this year's contest too coded in Java, followed by C# and C/C++. Coders this year also turned to trending languages such as Python and Ruby.


The competition also saw the rise of the top five IT companies - Persistent Systems (first), Steria (second), IRIS Software (third), ITC Infotech (fourth) and Amadeus South Asia (fifth).


Reference By:

 Another One:

Hadoop: Big Data Landscape -> Map & Reduce Functionality



So, Solution Is Here:



The best Android libraries that Java & Android Programmer/Developer should know about

The best Android libraries that Java & Android Programmer/Developer should know about



-
Dagger
-

Dagger is a really lightweight dependency injection with no extra bells and whistles. It is a simple and fast dependency injector for both Android and Java. It has 2 pieces: the Dagger library (100kb of size) and the Dagger compiler.
The library contains all the necessary logic and some annotations. It also uses standard javax.inject annotations, making your code portable between different dependency injection frameworks like Spring or Guice. Dagger is one of the simplest and most lightweight DI frameworks. It doesn’t contain all the fancy features provided by larger frameworks but it is fast and it does its job. It’s definitely worth considering for when you want to use plain dependency injection with nothing else.

-
LeakCanary
-

It’s a memory leak detection library for Android and Java. It helps to detect easily leaking objects by just adding couple of lines of Java code to your existing code. It’s free and very easy to use. Similar to Dagger, the development of LeakCanary is also led by Square.
-
ZXing
-

Using Barcodes and QR codes has become a standard already in the machine-readable data world. ZXing has been around for a while. Originally written in Java, it can read and create barcodes on many platforms and it has been ported to many different languages. The library has been around for a while and has a good user base. The QR-code reader you are using in your smartphone is probably using this library. It works well and has a good history.
-
Retrofit
-

Retrofit is a library that can turn your REST API into a Java interface. It is a type-safe REST client for both Android and Java. Retrofit enables you to write nice code in pure Java for communication with almost any RESTful API. Like Android libraries tend to be – a lightweight and relatively easy to use.
-
Libphonenumber
-

It is probably the best and most comprehensive library for parsing, validating and formatting phone numbers. Other than the name, which doesn’t roll off the tongue, it’s great!
-
Tape
-

Tape is just a collection of classes for queue handling. It’s great for handling data streams and downloading 
data in unstable environments. Rather than code a load of the queue-handling work manually, Tape takes 
care of it for you. If something fails then Tape automatically retries run the command or operation again. 
Also, all intermediate results can be automatically cached, which is a useful feature too.
-
Jitpack.io
-

The Jitpack.io is developed by the team at Streametry Ltd. Jitpack can build any github project off the hook and publish it to the public Maven repo. How cool is that? It will help save time and hassle when building dependencies. This is one of the easiest ways to publish any Github project as a Maven dependency.

Study these 10 strategies to enhance your interview skills

Study these 10 strategies to enhance your interview skills


Even the smartest and most qualified job seekers need to prepare for job interviews. Why, you ask? Interviewing is a learned skill, and there are no second chances to make a great first impression.
Reflect the three Cs during the interview: cool, calm and confidence. You know you can do the job; make sure the interviewer believes you can, too.

1} Practice Good Nonverbal Communication
It's about demonstrating confidence: standing straight, making eye contact and connecting with a firm handshake. That first nonverbal impression can be a great beginning -- or quick ending -- to your interview.

2 } Dress for the Job or Company
Today's casual dress codes do not give you permission to dress as "they" do when you interview. It is important to know what to wear to an interview and to be well-groomed. Whether you wear a suit or something less formal depends on the company culture and the position you are seeking. If possible, call to find out about the company dress code before the interview.

3} Listen
From the very beginning of the interview, your interviewer is giving you information, either directly or indirectly. If you are not hearing it, you are missing a major opportunity. Good communication skills include listening and letting the person know you heard what was said. Observe your interviewer, and match that style and pace.

4} Don't Talk Too Much
Telling the interviewer more than he needs to know could be a fatal mistake. When you have not prepared ahead of time, you may ramble when answering interview questions, sometimes talking yourself right out of the job. Prepare for the interview by reading through the job posting, matching your skills with the position's requirements and relating only that information.

5} Don't Be Too Familiar
The interview is a professional meeting to talk business. This is not about making a new friend. Your level of familiarity should mimic the interviewer's demeanor. It is important to bring energy and enthusiasm to the interview and to ask questions, but do not overstep your place as a candidate looking for a job.

6} Use Appropriate Language
It's a given that you should use professional language during the interview. Be aware of any inappropriate slang words or references to age, race, religion, politics or sexual orientation -- these topics could send you out the door very quickly.

7} Don't Be Cocky
Attitude plays a key role in your interview success. There is a fine balance between confidence, professionalism and modesty. Even if you're putting on a performance to demonstrate your ability, overconfidence is as bad, if not worse, as being too reserved.

8} Take Care to Answer the Questions
When interviewers ask for an example of a time when you did something, they are asking behavioral interview questions, which are designed to elicit a sample of your past behavior. If you fail to relate a specific example, you not only don't answer the question, but you also miss an opportunity to prove your ability and talk about your skills.

9} Ask Questions
When asked if they have any questions, most candidates answer, "No." Wrong answer. Part of knowing how to interview is being ready to ask questions that demonstrate an interest in what goes on in the company. Asking questions also gives you the opportunity to find out if this is the right place for you. The best questions come from listening to what you're asked during the interview and asking for additional information.

10} Don't Appear Desperate
When you interview with the "please, please hire me" approach, you appear desperate and less confident. Reflect the three Cs during the interview: cool, calm and confidence. You know you can do the job; make sure the interviewer believes you can, too.

Top 10 Interview Tips


Dice's list of the top 10 software skills in demand


Dice's list of the top 10 software skills in demand :

1. Java/Java Enterprise Editions developers(J2EE Developers)
2. Software developers/engineers(in specific technology)
3. Mobile developers(Android / IOS)
4. Project Managers
5. .NET developers
6. Web developers
7. System engineers/administrators
8. Network engineers/administrators
9. SAP professionals
10. Business analysts


Java is also a top programming language for IEEE too.


Java is also a top programming language for IEEE too

IEEE Spectrum combined data from a variety of sources—including GitHub and its own digital library—in order to rank the popularity of 48 different languages. Here’s their top 10:




One Big Way to Strengthen An Experienced Candidate Resume:

One Big Way to Strengthen An Experienced Candidate Resume :

[See The Detail Presentation Pattern]

 
 


Let’s take a couple of bullet-points from a hypothetical profile for a developer:
  • Developed e-commerce solutions and social networking functionality.
  • Coded, tested, and debugged mobile & java applications.
  • Designed the UX for dashboards and data-feeds.

Sounds good, right? Except all of these points could be much stronger.

Let’s rewrite all above from an “accomplishment” mindset:
  • Developed e-commerce solutions ahead of deadline that helped boost company revenues by 50 percent.
  • Coded, tested, and debugged java applications and also mobile applications that achieved 75 percent more downloads than their previous versions.
  • Designed the UX for dashboards and data-feeds that attracted rave reviews from internal and external clients.
 

Tuesday, 2 September 2014

't o u c h a b l e' 3 D t e c h n o l o g y

't o u c h a b l e'   3 D   t e c h n o l o g y



Technology that generates touchable 3D imagery was unveiled in Japan Monday, with its developers saying users could pull and push objects that are not really there."Touching is an important part of human communication but virtual reality has until now been lacking it," its chief executive Natsuo Koda told a press conference.
"This technology will give you a sense that you can touch objects in the 3D world". It works by fooling the brain, blending the images the eye is seeing with different patterns of vibration created by a small device on the fingertip, said Norio Nakamura, the inventor of "3D-Haptics Technology" and chief technical officer at the firm.

In one demonstration of a prototype head-mounted display, the company showed how the user can feel resistance from virtual buttons that he or she is pushing. Miraisens is a spin-off of the National Institute of Advanced Industrial Science and Technology based in the city of Tsukuba east of Tokyo.Billing the technology as a world first, the company says it wants to commercialise it through applications in electronics and the services industry

The system can be built into devices in the shape of coins, sticks or pens, amongst others.Company officials said they could foresee a number of ways of using the technology.
For example, if built into a game controller, it could be used to give a sense of resistance in response to certain actions within the game, they said.It could also be used to make up complicated data that could be fed into a 3D printer, allowing a child to make a virtual dinosaur model and then watch it come into existence.

Other applications could include help for doctors carrying out surgery remotely, or navigation assistance in canes used by visually impaired people.

Smartphone a p p to screen for jaundice in newborns

Smartphone app  to screen for jaundice in newborns

 

Jaundice is common in babies in the first few days after they are born. Now a team from the University of Washington is developing a smartphone app that should make it easier for doctors and parents to monitor newborns and decide if they need to have a blood test to confirm they have jaundice.The definitive test for jaundice is a blood test, but what is needed is an effective screening tool, better than the naked eye, to help decide if a blood test should be done.

 

Some hospitals have a non-invasive screening tool for jaundice, but it is expensive and not suitable for home use.

The tool that the University of Washington (UW) team has developed combines a smartphone app with a color calibration card and algorithms in a cloud and gives a result in minutes, as UW professor of pediatrics James Taylor explains:

"Virtually every baby gets jaundiced, and we're sending them home from the hospital even before bilirubin levels reach their peak. This smartphone test is really for babies in the first few days after they go home. A parent or health care provider can get an accurate picture of bilirubin to bridge the gap after leaving the hospital."

To use the app, called BiliCam, the parent or health care provider places the calibration card - which is about the size of a business card - on the naked torso of the baby and takes a flash-assisted photo of the baby and card using the smartphone.

The app sends key data from the photo - which with the help of the calibration card accounts for differences in lighting conditions and skin tones - to the cloud using a data connection provided through the smartphone.

Algorithms in the cloud analyze the data and within minutes the smartphone receives a report on the likely levels of bilirubin in the baby.


 

Leap Motion offers VR mount for hand recognition device, reveals plans for better VR experience

Leap Motion offers VR mount for hand recognition device, reveals plans for better VR experience



Leap Motion, maker of a device that sits on a desk to capture hand movements (to replace the mouse, joystick, etc.) has announced that it is now offering a mounting apparatus that allows for connecting its recognition device directly to head-worn virtual reality gear such as the Oculus Rift. The mounting hardware also comes with an updated SDK kit to allow for the new perspective offered by the recognition device.

With the announcement, Leap Motion has declared its intention to be a part of the virtual reality movement—they want gamers (or other users) to use their hand recognition device to manipulate virtual objects, rather than using a keyboard, mouse or other controller. The Leap Motion device (which is clearly still in need of a name) has been used by developers as part of virtual reality systems, but its application has been awkward and ad hoc—some allow the hand recognition device to lay on a desk or table, others have attempted to attach the device directly to their headsets, which has led to mixed results. With their announcement, Leap Motion is clearly trying to make the process easier for developers.

When the recognition device is used as part of a virtual reality experience, the user's hands are rendered and shown on the screen, allowing for use in manipulating virtual objects. While most report the response time of the onscreen hands is nearly instantaneous, use of the device has been limited to low resolution (in black and white) and sometimes glitches—putting the device on the headset would seem to make the system more accurate and usable.

But, that's not the end of the story, the company has also announced that it is working on a next generation hand recognition device designed specifically for virtual reality systems. The prototype has been given the name Dragonfly, and will also be attachable or built directly into a headset—it is expected to offer a wider range of hand and arm recognition along with color cameras to allow for more natural-looking virtually replicated hands. Notably, both devices could also be used as part of a heads-up display, adding virtually rendered hand movement to augmented reality screens.
eap Motion, maker of a device that sits on a desk to capture hand movements (to replace the mouse, joystick, etc.) has announced that it is now offering a mounting apparatus that allows for connecting its recognition device directly to head-worn virtual reality gear such as the Oculus Rift. The mounting hardware also comes with an updated SDK kit to allow for the new perspective offered by the recognition device.

Read more at: http://phys.org/news/2014-08-motion-vr-mount-recognition-device.html#jC