Monday, January 6, 2014

Testing on Android (Part 2): Functional Tests

Here's part two of my series on Android testing.  This time, I'm going to wade into the huge number of functional testing frameworks that exist.  The differentiation I made between unit testing and functional testing is that the functional tests operate the actual device (as in, you could watch it running through a test).
So Many Frameworks

As you can see in my spreadsheet, there are a ton of functional testing frameworks out there.  I don't have any inclination to test all of them.  Here's what I haven't tried myself, for various reasons:
  • Non-Java - if my code and unit tests are going to be in Java, I might as well make my functional tests in Java as well.
  • Recorder-based testing - While this might be good for a less technical tester, I'd prefer exact control over my tests.
  • Superseded or discontinued - Some frameworks are old and have been surpassed by more modern frameworks.  Others have been discontinued.
This leaves just a few frameworks to investigate.

Robotium

I was already somewhat familiar with Robotium.  It runs off of the official Android testing framework, but adds the capabilities needed to actually run through an entire app.

It's been around for years, and so it's fairly stable.  It's also straightforward; you use the Solo class to run through your app, one step at a time.  It requires compiling along with the app's source, which could be a negative for some.  Overall, it's a solid functional testing solution.

uiautomator

UiAutomator is a more recent offering from Google.  I found it to be lacking and difficult to use.

First, it depends on more recent APIs, so it can only be used on Jelly Bean and above - you can't use it to test backwards compatibility.  Second, the deployment is more complex than other frameworks.  There's no simple script to put the code you wrote onto a device - you have to write a script yourself because it involves a few dynamic commands (depending on how you named your classes).

Third, it just feels like it's not quite there.  For example, simply launching my app from the test was a struggle.  The suggested start is to begin on your home page then page towards your app to launch it, except the code for doing so is broken.  Instead I had to use some hacky code which used "am start" to launch my Activity.

It does have a few unique advantages.  First, it can be written entirely black-box; you don't need access to the source code.  You use uiautomatorviewer to examine how an app is written and write tests based on that.  Second, it runs on the entire OS, so you can really test cross-app interaction.  If you need either of these, then I might check it out; but for my purposes this is a non-starter.

Espresso

Espresso is the latest toolkit from Google, and it's so awesome I have to wonder if the reason uiautomator is having issues is because everyone was actually working on Espresso.

It's got a different paradigm from other testing frameworks.  It starts with onView() or onData() with Hamcrest matchers to find your View/AdapterView.  Once found, you can then either perform an action or check some assertions.

The reason for the onView()/onData() setup is that Espresso examines the UI thread to know when processing is done.  A common problem with functional testing on Android is not knowing when a View will show up, so you end up with a lot of sleeps in your tests.  With Espresso you skip all of that, so it's blazing fast!

It's not all sunshine and roses.  It doesn't handle animations well (in fact, the expected setup is to turn all your animations off with dev opts).  I also found initial understanding harder, having to learn how to use Hamcrest to match my Views.  But once I got past those, the testing was so fast and stable that it blew me away.

Appium

I had started to try out Appium, as it seemed to present another way of functional testing, but ultimately gave up.

Maybe it was because I tried uiautomator, robotium, and Espresso before getting to Appium, but the setup was just overwhelming.  There was no "hello, world" sample I found that could take me from zero to testing.  There was a lot of documentation I found that listed out about five things I had to install on my machine (and have play together nicely) before I could start.

If my entire job was automation testing, or I knew selenium very well already, then I might consider Appium because then the time investment might pay off.  But as an Android developer who wants to dabble with testing on the side, I don't want to have to deal with getting this environment setup (not to mention the pain I'd be putting others through to replicate my work).

Conclusion

I would take my thoughts with a grain of salt; I haven't used any of these long enough to really get into the nitty gritty.  That said, I think my future functional tests will be written in Espresso; its design paradigm makes for focused, solid testing.  Plus, its basis on the Looper to determine when to continue makes it lightyears faster than the other frameworks could hope to be.  I hope it continues to be supported by Google because I like it.

219 comments:

  1. Hi Daniel, Thanks for those articles. Can I also mention a library of my own that can be used both for unit and functional testing. It's name is BoundBox (https://github.com/stephanenicolas/boundbox). It simply breaks encapsulation for testing, thus allowing to invoke private/protected methods, accessing the inner test of an object to assert the result of a test, accessing elements of UI to manipulate them, and even injecting mocked dependencies.
    Also, Jérôme Van Der Linden and I, have been working on a project to setup many test related technologies : Quality Tools for Android (https://github.com/stephanenicolas/Quality-Tools-for-Android).

    ReplyDelete
  2. Hi thanks for sharing about functional testing keep posting

    ReplyDelete
  3. Thanks..this post if helpful

    ReplyDelete
  4. These ways are very simple and very much useful, as a beginner level these helped me a lot thanks fore sharing these kinds of useful and knowledgeable information.
    Mobile App Development Company
    Android app Development Company
    ios app development Company
    Mobile App Development Companies

    ReplyDelete
  5. I wondered upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I’ll be subscribing to your feed and I hope you post again soon.
    Mobile App Development Company
    Mobile App Development Companies

    ReplyDelete
  6. These ways are very simple and very much useful, as a beginner level these helped me a lot thanks fore sharing these kinds of useful and knowledgeable information.
    Android App Development Company

    ReplyDelete
  7. great and nice blog thanks sharing..I just want to say that all the information you have given here is awesome...Thank you very much for this one.
    Web Design Development Company
    Web design Company in Chennai
    Web development Company in Chennai

    ReplyDelete
  8. it is really amazing...thanks for sharing....provide more useful information...
    Mobile app development company

    ReplyDelete
  9. You have provided an nice article, Thank you very much for this one. And i hope this will be useful for many people.. and i am waiting for your next post keep on updating these kinds of knowledgeable things...
    Fitness SMS
    Salon SMS
    Investor Relation SMS

    ReplyDelete
  10. You have provided an nice article, Thank you very much for this one. And i hope this will be useful for many people.. and i am waiting for your next post keep on updating these kinds of knowledgeable things...
    iOS App Development Company

    ReplyDelete
  11. Good and Interesting article ... thanks for sharing your valuable information and time for us... keep rocks and sharing...

    Android Training in Chennai

    ReplyDelete
  12. You have provided an nice article, Thank you very much for this one. And i hope this will be useful for many people.. and i am waiting for your next post keep on updating these kinds of knowledgeable things...
    Texting API
    Text message marketing
    Digital Mobile Marketing
    Sms API
    Sms marketing

    ReplyDelete
  13. This article is very much helpful and i hope this will be an useful information for the needed one. Keep on updating these kinds of informative things...
    snapho

    ReplyDelete
  14. This is excellent information. It is amazing and wonderful to visit your site.Thanks for sharing this information,this is useful to me...
    Mobile Marketing Service
    Mobile Marketing Companies

    ReplyDelete
  15. India's One of The Best Online Mobile Recharge Software Development Company, Using Our All in One Mobile Recharge Software You Can Recharge All India Operator via Single SIM Card. Free Distributor or Retailer ID. B2B or B2C Multi Recharge or Domestic Money Transfer Software Provider in India.
    Bulk SMS Provider in India, Promotional Bulk SMS Provider

    ReplyDelete
  16. This comment has been removed by the author.

    ReplyDelete


  17. Superb. I really enjoyed very much with this article here. Really it is an amazing article I had ever read. I hope it will help a lot for all. Thank you so much for this amazing posts and please keep update like this excellent article. thank you for sharing such a great blog with us.

    angularjs Training in online

    angularjs Training in bangalore

    angularjs Training in bangalore

    angularjs Training in btm

    ReplyDelete
  18. Thank you for this post. Thats all I are able to say. You most absolutely have built this blog website into something speciel. You clearly know what you are working on, youve insured so many corners.thanks
    online Python certification course | python training in OMR | Python training course in Chennai

    ReplyDelete
  19. Great thoughts you got there, believe I may possibly try just some of it throughout my daily life.
    Devops training in indira-nagar

    ReplyDelete
  20. I am reading your post from the beginning, it was so interesting to read & I feel thanks to you for posting such a good blog, keep updates regularly.
    SEO Training in Chennai
    SEO Training
    SEO Course in Chennai
    SEO Course Chennai
    SEO Training near me

    ReplyDelete
  21. A very nice guide. I will definitely follow these tips. Thank you for sharing such detailed article. I am learning a lot from you.

    rpa training in electronic-city | rpa training in btm | rpa training in marathahalli | rpa training in pune

    ReplyDelete
  22. This looks absolutely perfect. All these tiny details are made with lot of background knowledge. I like it a lot. 
    Java training in Chennai | Java training in Bangalore

    Java interview questions and answers | Core Java interview questions and answers

    ReplyDelete
  23. The knowledge of technology you have been sharing thorough this post is very much helpful to develop new idea. here by i also want to share this.
    excel advanced excel training in bangalore
    Devops Training in Chennai

    ReplyDelete
  24. I found your blog while searching for the updates, I am happy to be here. Very useful content and also easily understandable providing.. Believe me I did wrote an post about tutorials for beginners with reference of your blog. 
    Best Devops training in sholinganallur
    Devops training in velachery
    Devops training in annanagar
    Devops training in tambaram

    ReplyDelete
  25. Good job in presenting the correct content with the clear explanation. The content looks real with valid information. Good Work

    DevOps is currently a popular model currently organizations all over the world moving towards to it. Your post gave a clear idea about knowing the DevOps model and its importance.

    Good to learn about DevOps at this time.


    devops training in chennai | devops training in chennai with placement | devops training in chennai omr | devops training in velachery | devops training in chennai tambaram | devops institutes in chennai | devops certification in chennai | trending technologies list 2018

    ReplyDelete
  26. From your discussion I have understood that which will be better for me and which is easy to use. Really, I have liked your brilliant discussion. I will comThis is great helping material for every one visitor. You have done a great responsible person. i want to say thanks owner of this blog.
    python course in pune
    python course in chennai
    python course in Bangalore

    ReplyDelete
  27. Good Post, I am a big believer in posting comments on sites to let the blog writers know that they ve added something advantageous to the world wide web.
    python training Course in chennai
    python training in Bangalore
    Python training institute in bangalore

    ReplyDelete
  28. In the beginning, I would like to thank you much about this great post. Its very useful and helpful for anyone looking for tips. I like your writing style and I hope you will keep doing this good working.
    Angularjs Classes in Bangalore
    Angularjs Coaching in Bangalore
    Angularjs Institute in Bangalore
    ccna Certification Course in Bangalore
    ccna Certification Training in Bangalore

    ReplyDelete

  29. Hello! This is my first visit to your blog! We are a team of volunteers and starting a new initiative in a community in the same niche. Your blog provided us useful information to work on. You have done an outstanding job.
    Advanced AWS Training in Chennai | Best Amazon Web Services Training in Chennai
    Best Amazon Web Services Training Course in Bangalore | AWS Training in Bangalore
    AWS Online Training and Certification | AWS Certification Course

    ReplyDelete
  30. Wow it is really wonderful and awesome thus it is very much useful for me to understand many concepts and helped me a lot. it is really explainable very well and i got more information from your blog.

    best rpa training in chennai
    rpa training in chennai
    rpa interview questions and answers
    automation anywhere interview questions and answers
    blueprism interview questions and answers
    uipath interview questions and answers
    rpa training in bangalore

    ReplyDelete
  31. Wow it is really wonderful and awesome thus it is very much useful for me to understand many concepts and helped me a lot. it is really explainable very well and i got more information from your blog.

    best rpa training in chennai
    rpa training in chennai
    rpa interview questions and answers
    automation anywhere interview questions and answers
    blueprism interview questions and answers
    uipath interview questions and answers
    rpa training in bangalore

    ReplyDelete
  32. I’m planning to start my blog soon, but I’m a little lost on everything. Would you suggest starting with a free platform like Word Press or go for a paid option? There are so many choices out there that I’m completely confused. Any suggestions? Thanks a lot.
    Best AWS Training in Marathahalli | AWS Training in Marathahalli
    Best AWS Amazon Web Services Training in Chennai | Best AWS Training and Certification for Solution Architect in Chennai
    Amazon Web Services Training in Anna Nagar, Chennai |Best AWS Training in Anna Nagar, Chennai

    ReplyDelete
  33. I’m planning to start my blog soon, but I’m a little lost on everything. Would you suggest starting with a free platform like Word Press or go for a paid option? There are so many choices out there that I’m completely confused. Any suggestions? Thanks a lot.
    Best AWS Training in Marathahalli | AWS Training in Marathahalli
    Best AWS Amazon Web Services Training in Chennai | Best AWS Training and Certification for Solution Architect in Chennai
    Amazon Web Services Training in Anna Nagar, Chennai |Best AWS Training in Anna Nagar, Chennai

    ReplyDelete
  34. Thanks for your great and helpful presentation I like your good service. I always appreciate your post. That is very interesting I love reading and I am always searching for informative information like this.AngularJS Training in Chennai | Best AngularJS Training Institute in Chennai

    ReplyDelete
  35. I think things like this are really interesting. I absolutely love to find unique places like this. It really looks super creepy though!!
    machine learning training in chennai
    best training insitute for machine learning
    Android training in Chennai
    PMP training in chennai

    ReplyDelete
  36. Thank you so much for your information,its very useful and helful to me.Keep updating and sharing. Thank you.
    RPA training in chennai | UiPath training in chennai


    ReplyDelete
  37. Such a Great Article!! I learned something new from your blog. Amazing stuff. I would like to follow your blog frequently. Keep Rocking!!
    Blue Prism training in chennai | Best Blue Prism Training Institute in Chennai

    ReplyDelete
  38. Hi, Thanks a lot for your explanation which is really nice. I have read all your posts here. It is amazing!!!
    Keeps the users interest in the website, and keep on sharing more, To know more about our service:
    Please free to call us @ +91 9884412301 / 9600112302

    Openstack course training in Chennai | best Openstack course in Chennai | best Openstack certification training in Chennai | Openstack certification course in Chennai | openstack training in chennai omr | openstack training in chennai velachery

    ReplyDelete
  39. Wow!! Really a nice Article. Thank you so much for your efforts. Definitely, it will be helpful for others. I would like to follow your blog. Share more like this. Thanks Again.
    iot training in Chennai | Best iot Training Institute in Chennai

    ReplyDelete
  40. I know you feel more happy when you get things done and best of all those things are your most precious treasure.
    Python Online training
    python Training in Chennai
    Python training in Bangalore

    ReplyDelete
  41. The knowledge of technology you have been sharing thorough this post is very much helpful to develop new idea.
    here by i also want to share this.
    Java training in Bangalore|best Java training in Bangalore
    Java training in Chennai
    Java training in Bangalore
    Java online training
    Java training in Pune

    ReplyDelete
  42. Really nice topics you had discussed above. I am much impressed. Thank you for providing this nice information here.

    Game Testing

    Video Game QA

    IOS Game QA Testing Services

    Game Performance Testing

    Quality Assurance Games

    ReplyDelete
  43. Very nice article. Thank you for nice article and please keep update like this.

    PS4 Game Tester

    Game Testing Services

    Video Game Testing Companies

    ReplyDelete

  44. Inspiring writings and I greatly admired what you have to say , I hope you continue to provide new ideas for us all and greetings success always for you.
    Keep update more information..


    Selenium training in bangalore
    Selenium training in Chennai
    Selenium training in Bangalore
    Selenium training in Pune
    Selenium Online training
    Selenium interview questions and answers

    ReplyDelete
  45. Really nice topics you had discussed above. I am much impressed. Thank you for providing this nice information here.

    Mobile Game Testing

    Gameplay Testing

    Switch Game Testing

    ReplyDelete
  46. Thanks for such a great article here. I was searching for something like this for quite a long time and at last, I’ve found it on your blog. It was definitely interesting for me to read about their market situation nowadays.angularjs best training center in chennai | angularjs training in velachery | angularjs training in chennai | best angularjs training institute in chennai

    ReplyDelete
  47. This post is much helpful for us. This is really very massive value to all the readers and it will be the only reason for the post to get popular with great authority
    honor mobile service centre in Chennai
    honor service center near me
    honor service
    honor service centres in chennai
    honor service center velachery
    honor service center in vadapalani

    ReplyDelete
  48. Really nice topics you had discussed above. I am much impressed. Thank you for providing this nice information here

    Software Testing Company

    PS4 Game Tester

    Game Testing Services

    Video Game Testing Companies

    ReplyDelete
  49. Nice post. Thanks for sharing! I want people to know just how good this information is in your article. It’s interesting content and Great work.
    Thanks & Regards,
    VRIT Professionals,
    No.1 Leading Web Designing Training Institute In Chennai.

    And also those who are looking for
    Web Designing Training Institute in Chennai
    SEO Training Institute in Chennai
    Photoshop Training Institute in Chennai
    PHP & Mysql Training Institute in Chennai
    Android Training Institute in Chennai

    ReplyDelete
  50. This is the exact information I am been searching for, Thanks for sharing the required infos with the clear update and required points. To appreciate this I like to share some useful information regarding Microsoft Azure which is latest and newest,

    Regards,
    Ramya

    Azure Training in Chennai
    Azure Training Center in Chennai
    Best Azure Training in Chennai
    Azure Devops Training in Chenna
    Azure Training Institute in Chennai
    Azure Training in Chennai OMR
    Azure Training in Chennai Velachery
    Azure Online Training
    Azure Training in Chennai Credo Systemz
    DevOps Training in Chennai Credo Systemz

    ReplyDelete
  51. I would like to thank you for the efforts you have made in writing this article. I am hoping the same best work from you in the future as well. In fact your creative writing abilities has inspired me to start my own BlogEngine blog now. Really the blogging is spreading its wings rapidly. Your write up is a fine example of it.
    Microsoft Azure online training
    Selenium online training
    Java online training
    Python online training
    uipath online training

    ReplyDelete
  52. Great efforts put it to find the list of articles which is very useful to know, Definitely will share the same to other forums.
    big data hadoop training cost in chennai | hadoop training in Chennai | best bigdata hadoop training in chennai | best hadoop certification in Chennai

    ReplyDelete
  53. आपका दिन शुभ रहे। इस तरह के एक दिलचस्प लेख को साझा करने के लिए धन्यवाद!

    lều xông hơi mini

    mua lều xông hơi ở đâu

    lều xông hơi gia đình

    bán lều xông hơi

    xông hơi hồng ngoại

    ReplyDelete
  54. Önskar dig en glad och lycklig ny vecka med din familj och dina nära och kära. Tack för att du delade artikeln

    Giảo cổ lam hòa bình

    hat methi

    hạt methi

    hạt methi ấn độ

    ReplyDelete
  55. Download and install Vidmate App which is the best HD video downloader software available for Android. Get free latest HD movies, songs, and your favorite TV shows.

    ReplyDelete
  56. Thanks a lot for writting such a great article. It's really has lots of insights and valueable informtion.
    If you wish to get connected with AI world, we hope the below information will be helpful to you.
    Python Training Institute in Pune
    Python Interview Questions And Answers For Freshers
    Data -Science
    ML(Machine Learning) related more information then meet on EmergenTeck Training Institute .
    Machine Learning Interview Questions And Answers for Freshers
    Thank you.!

    ReplyDelete
  57. Thanks for sharing information with us. If someone wants to know about Taxi Service App and Health Management Software I think this is the right place for you.
    Taxi Dispatch App | Taxi Service Providers | Safety and Health Management System

    ReplyDelete


  58. I was very interested in the article , it’s quite inspiring I should admit. I like visiting your site since I always come across interesting articles like this one. Keep sharing! Regards. Read more about
    Offshore software testing services
    software testing services company
    software testing services
    Software Qa Services
    quality assurance service providers
    Performance testing services
    Security testing services

    ReplyDelete
  59. Software Development Company We specialize in Blockchain development, Artificial Intelligence, DevOps, Mobile App development, Web App development and all your customised online solutions. Get best impression at online by our services, we are familiar for cost effectiveness, quality, delivery and support.

    ReplyDelete
  60. This comment has been removed by the author.

    ReplyDelete

  61. Hello friends, nice post and nice urging commented at this place, I am in fact enjoying by these.Regards Thanks for sharing this valuable information to our vision. You have posted a trust worthy blog keep sharing.
    Offshore software testing services
    software testing services company
    software testing services
    Software Qa Services
    quality assurance service providers
    Performance testing services
    Security testing services
    software testing Companies

    ReplyDelete
  62. Great Explanation with lots of useful information about aws and great explanation in this blog.

    AWS Training in Chennai | SAP Training in Chennai

    ReplyDelete
  63. Дээд чанар бол зүгээр л( đá ruby thiên nhiên ) санаатай биш юм. Энэ нь өндөр( Nhẫn đá tourmaline ) түвшний төвлөрөл, тусгай хүчин( Đá Sapphire ) чармайлт, ухаалаг ( đá sapphire hợp mệnh gì )чиг баримжаа, чадварлаг туршлага, ( vòng đá sapphire )саад тотгорыг даван туулах( đá tourmaline đen ) боломжийг хардаг.

    ReplyDelete
  64. nice blog
    get best placement at VSIPL

    digital marketing services
    web development company
    seo network point

    ReplyDelete
  65. your post is very interesting to read. I never stop myself to say something about it. Angular js training in bangalore

    ReplyDelete
  66. Hey Nice Blog!! Thanks For Sharing!!! Wonderful blog & good post. It is really very helpful to me, waiting for a more new post. Keep Blogging!Here is the best angularjs training online training with free Bundle videos .

    contact No :- 9885022027.
    SVR Technologies

    ReplyDelete
  67. Thanks For sharing a nice post about Oracle Apps Training Course.It is very helpful and AWS useful for us.aws training in bangalore

    ReplyDelete
  68. Really it was an awesome article,very interesting to read.You have provided an nice article,Thanks for sharing.devops Training in Bangalore

    ReplyDelete
  69. These provided information was really so nice,thanks for giving that post and the more skills to develop after refer that post.Amazon web services Training in Bangalore

    ReplyDelete
  70. This is really an awesome post, thanks for it. Keep adding more information to this.mulesoft training in bangalore

    ReplyDelete
  71. Really it was an awesome article,very interesting to read.You have provided an nice article,Thanks for sharing.salesforce developer training in bangalore

    ReplyDelete
  72. Being new to the blogging world I feel like there is still so much to learn. Your tips helped to clarify a few things for me as well as giving.salesforce admin training in bangalore

    ReplyDelete
  73. Linking is very useful thing.you have really helped lots of people who visit blog and provide them use full information.servicenow training in bangalore

    ReplyDelete
  74. Your articles really impressed for me,because of all information so nice.cloud computing training in bangalore

    ReplyDelete
  75. Thanks for Sharing This Article.It is very so much valuable content. I hope these Commenting lists will help to my website
    best angular js online training

    ReplyDelete
  76. Thank you so much for your information,its very useful and helful to me.Keep updating and sharing. Thank you...
    Selenium Training in Bangalore | Selenium Courses | Selenium Training Institutes - RIA Institute of Technology - Best Selenium Training in Bangalore - Placement oriented Selenium Training Institutes in Bangalore.
    Learn Selenium Testing Training from expert Trainers.

    ReplyDelete
  77. Hi, Great.. Tutorial is just awesome..It is really helpful for a newbie like me.. I am a regular follower of your blog. Really very informative post you shared here. Kindly keep blogging. If anyone wants to become a .Net developer learn from Dot Net Training in Chennai. or learn thru ASP.NET Essential Training Online . Nowadays Dot Net has tons of job opportunities on various vertical industry.hadoop training institutes in bangalore

    ReplyDelete
  78. Really very happy to say, your post is very interesting to read. I never stop myself to say something about it.You’re doing a great job. Keep it up...

    Bangalore Training Academy located in Bangalore, is one of the best Workday Training institute with 100% Placement support. Workday Training in Bangalore provided by Workday Certified Experts and real-time Working Professionals with handful years of experience in real time Workday Projects.

    ReplyDelete
  79. Really very happy to say, your post is very interesting to read. I never stop myself to say something about it. You’re doing a great job. Keep it up…

    Advance your career as a SharePoint Admin Engineer by doing SharePoint Admin Courses from Softgen Infotech located @BTM Layout Bangalore.

    ReplyDelete
  80. Wonderful thanks for sharing an amazing idea. keep it...

    Learn DevOps Training from the Industry Experts we bridge the gap between the need of the industry. Softgen Infotech provide the Best DevOps Training in Bangalore with 100% Placement Assistance. Book a Free Demo Today.

    ReplyDelete

  81. Great post!I am actually getting ready to across this information,i am very happy to this commands.Also great blog here with all of the valuable information you have.Well done,its a great knowledge.

    sap abap training in bangalore

    sap abap courses in bangalore

    sap abap classes in bangalore

    sap abap course syllabus

    best sap abap training

    sap abap training center

    sap abap training institute in bangalore

    ReplyDelete
  82. Great post!I am actually getting ready to across this information,i am very happy to this commands.Also great blog here with all of the valuable information you have.Well done,its a great knowledge.

    sap hr courses in bangalore

    sap hr classes in bangalore

    sap hr training institute in bangalore

    sap hr course syllabus

    best sap hr training

    sap hr training centers

    sap hr training in bangalore

    ReplyDelete
  83. If you want to work as a Smart Hands Engineer, we’ve got all the information you need to know before making this career change. Smart hands engineers work to offer operational support and remote management, as well as help with things like installation and troubleshooting.

    ReplyDelete
  84. I just got to this amazing site not long ago. I was actually captured with the piece of resources you have got here. Big thumbs up for making such wonderful blog page!
    courses in business analytics

    data science course in mumbai

    data analytics courses

    data science interview questions

    ReplyDelete

  85. I finally found great post here.I will get back here. I just added your blog to my bookmark sites. thanks.Quality posts is the crucial to invite the visitors to visit the web page, that's what this web page is providing.
    data analytics courses
    ExcelR Data Science training in Mumbai
    data science interview questions
    ExcelR Business Analytics courses in Mumbai

    ReplyDelete
  86. Thanks for provide great informatic and looking beautiful blog, really nice required information & the things i never imagined and i would request, wright more blog and blog post like that for us. Thanks you once agian

    court marriage in delhi ncr
    court marriage in delhi
    court marriage in noida
    court marriage in ghaziabad
    court marriage in gurgaon
    court marriage in faridabad
    court marriage in greater noida
    name change online
    court marriage in chandigarh
    court marriage in bangalore

    ReplyDelete
  87. "I have website Live Digital india for Related to Movies Entertenmaint so please visit my site
    Download Movies
    https://livedigitalindia.in

    Thanks
    Dharmendra"

    ReplyDelete
  88. Thanks for posting
    my website techwolk is related to technology

    ReplyDelete

  89. Thanks for your extraordinary blog. Your idea for this was so brilliant. This would provide people with an excellent tally resource from someone who has experienced such issues. You would be coming at the subject from a different angle and people would appreciate your honesty and frankness. Good luck for your next blog!
    Tally ERP 9 Training
    tally classes
    Tally Training institute in Chennai
    Tally course in Chennai
    seo training classes
    seo training course
    seo training institute in chennai
    seo training institutes
    seo courses in chennai
    seo institutes in chennai
    seo classes in chennai
    seo training center in chennai

    ReplyDelete
  90. This post is really nice and informative. The explanation given is really comprehensive and useful.

    amazon web services training in bangalore
    aws tutorial for beginners

    ReplyDelete

  91. Whatever we gathered information from the blogs, we should implement that in practically then only we can understand that exact thing clearly, but it’s no need to do it, because you have explained the concepts very well. It was crystal clear, keep sharing..

    sap fico training videos
    sap fico online training

    ReplyDelete
  92. I'm a learner at OnlineQuranTeachers.com Learn Quran Online. Online Quran Teachers offers a variety of Online courses ranging from basic Arabic skills to advance Ijazah mode and more courses. what is the meaning of tajweed

    ReplyDelete
  93. afilmywap This site afilmywap uploads an HD and Low-quality theatre prints on their site filmywap.com or on filmywap.in, Checkout the list of updated movies from filmywap.

    ReplyDelete
  94. Thank you for sharing the article. Looking for front end development companies?
    The data that you provided in the blog is informative and effective.I am happy to visit and read useful articles here. I hope you continue to do the sharing through the post to the reader. Read more about
    Top Front end development companies
    Best front end development companies
    Mobile app development companies

    ReplyDelete

  95. That is nice article from you , this is informative stuff . Hope more articles from you . I also want to share some information about openstack online training and websphere portal tutorial

    ReplyDelete
  96. Thanks for sharing such a great information..Its really nice and informative..
    azure training

    ReplyDelete
  97. Really Very helpful Post & thanks for sharing & keep up the good work.
    Oflox Is The Best Digital Marketing Company In Dehradun Or Website Design Company In Dehradun

    ReplyDelete
  98. Cinevood provides HD bollywood and Hollywood Hindi movies to watch online for free. Cinevood.icu domain is sometimes not available ins search results due to some technical errors.

    ReplyDelete
  99. movievilla Movievilla.com site is a very famous site in providing HD mobile movies of various languages like Hindi, English, Tamil and Telugu movies.

    ReplyDelete
  100. wonderful article. Very interesting to read this article.I would like to thank you for the efforts you had made for writing this awesome article. This article resolved my all queries.
    Data science Interview Questions
    Data Science Course

    ReplyDelete
  101. Effective blog with a lot of information. I just Shared you the link below for Courses .They really provide good level of training and Placement,I just Had Android Classes in this institute,Just Check This Link You can get it more information about the Android course.


    Java training in chennai | Java training in annanagar | Java training in omr | Java training in porur | Java training in tambaram | Java training in velachery

    ReplyDelete
  102. Good article! I found some useful educational information in your blog about Angular Js, it was awesome to read, thanks for sharing this great content to my vision.
    Java training in chennai | Java training in annanagar | Java training in omr | Java training in porur | Java training in tambaram | Java training in velachery

    ReplyDelete