Testing Symfony3 best practices [closed] - testing

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 6 years ago.
Improve this question
I would like to know which is the best technology for testing Symfony apps. My idea is to test all the Application layers, starting with the Database (repository and queries), the services , Controllers and Views.
I check about this but i'm not sure which direction to follow. I found out some tool like Phpspec and Behat but i'm not sure they fit my need and which one is the best... What do you guys suggest?

This is what we've been doing at work last 4 years.
Use Behat for testing the behaviour of the app. We mainly cover how GUI related features (twig, templates, browser, file upload, client side validation, API request&response etc) behave however if you wish you can also cover how the app functionality behaves like such as (DB CRUD operations, testing emailing features, commands, queuing systems such as RabbitMQ, Beanstalk etc.) so you're not limited at all.
Use PhpSpec for testing the functionality of the app or a part of a feature or whole. We cover services, util classes, listeners so on.
Do not test controllers because we keep them as "thin" as possible as we follow "thin controller, fat services" approach.
So in general, Behat is pretty powerful to cover most of the cases so we have more behat tests than PhpSpec. You can use any appropriate testing tool such as PhpUnit so you're free to test others.
Plenty of Behat examples
Plenty of Symfony examples
A few PhpSpec examples

Related

How to decide which type of testing(Manual or automation) required when we get new web application? [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 3 years ago.
Improve this question
How to decide which type of testing(Manual or automation) required for a project or application to test?
What are the parameters we have to consider to select which type of testing(Manual or automation) to test very new application?
It depends on :-
Size of the project- If the project is large and consist of so many functionalities then automation testing is suggested
How many times you want to test a particular feature- If the requirement is to test regularly then automation test is best
Font size and image- This can not be tested through any automation tool so to test this, one should need to do manual testing
To find bugs- If one needs to find a lot of bugs, Manual testing is suggested.
You shouldn't have to choose between automation testing and manual testing the way you're asking. The way you're asking it gives me the feeling that the product is already waiting to be tested. In this case you would need to resort to manual testing.
Ideally you would want to have both and even more of automation. Some of the questions that you need to ask are:
Is this a new project or an existing one? If it's a new project then it's easier to plan for automation from the start. You could start implementing automation tests from the start. If it's an existing project then you'll need time to set up automation + write scripts etc. Then you have to resort to manual testing initially.
Is there any existing team? If yes, then what are they doing. You need to continue the process instead of suddenly disrupting it for anyone.
How much resources (money+people) do you have? Do you have manual testing resources? Are they busy or do they have bandwidth? How many automation test resources do you have?
What kind of project is it? Who does it go to? Does it have human lives depending upon it? Does it need a legal certificate of some kind for being tested?
There's just too many questions based on how your question is currently stated. I hope that this answers your question when we consider it generally. But if you're looking for a particular answer then please consider adding more context.

Best practices for designing Gherkin based Web Test Automation framework using selenium? [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
what is the Best practice for designing gherkin based UI Automation framework using selenium
Browser instance
For Feature wise steps definitions or page wise.
Exception handling
Logging functionality
Execution According to feature or Scenario using MSTest
Integration With Continuous Integration tool like jenkin.
Have you invested any time at looking what's possible so far?
Browser instance - Doesn't that depend on which browser you want selenium to automate, for example, would you want to run the same actions on different browsers to test it works on each one?
Feature wise or page wise steps - Specflow doesn't care, it treats all bindings as global so it really is a personal thing. The only issue comes where you mix bindings from different classes and expect them to share some data, but even then Specflow has some pretty neat DI like instantiation to make it easier.
Exception handling - this isn't relevant during testing. You simply want something that gets out of the way and lets you see it fail when expected.
Logging - During testing you don't care. Just pick something with a null logger.
Execution of specific tests - see ReSharper or built in runner in VS2012+, or even better ncrunch
CI integration - Since Specflow tests are just Nunit or MsTest tests then any CI system should just handle them. I'd pick TeamCity as it's probably the standard for DotNet CI

VSTS Loadrunner or something better? [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 looking to get a comparison between stress testing tools that are available today. The options put forward to us are either VSTS or Loadrunner.
As of now, the inclination is towards Loadrunner, but we are looking to see if there is any better option today.
Depends on what you're testing. Static HTTP or simple JSP pages, use something free like jmeter. If you're testing ASP.net, silverlight or other MS technology stack apps, then VSTS is your best bet. For almost anything else LR works well, including newer Rich Internet Web 2.0 type pages including AJAX and Flex.
Loadrunner licenses are prohibitively expensive, if you're looking at a one off test, it isn't worth acquiring a license.
For .NET Apps you can rely on VSTS. They help you simulate
Web Services Performance Testing
Coded UI for functional testing
Xpath Testing
patterns & practices: Performance Testing Guidance
http://perftesting.codeplex.com/wikipage?title=How%20To%3A%20Use%20Data%20Binding%20in%20Load%20Tests%20in%20Microsoft%20Visual%20Studio%20Team%20System&ProjectName=perftesting

How to diagram automated testing? [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 6 years ago.
Improve this question
I have a large legacy .NET application that has evolved and grown over the years to include many components and moving parts. I want to develop a strategy for developing automated unit and integration tests for this application and to that end I think a graphical representation would be key.
What I am picturing is some sort of diagram I could use to guide the process of writing up the test cases, help achieve better coverage, and eventually refer back to once a specific test fails. Does anyone have any thoughts on what type of diagram could fulfill this goal? My guess is this would be a variant of the classic functional block diagram, but I have not found examples that specifically relate to the design of an automated testing strategy.
Could this be what you are looking for?
The UTP provides extensions to UML to
support the design, visualization,
specification, analysis, construction,
and documentation of the artifacts
involved in testing. It is
independent of implementation
languages and technologies, and can be
applied in a variety of domains of
development.
UML Testing Profile: http://utp.omg.org/

Software Environment Documentation Checklist [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 5 years ago.
Improve this question
I work for a insurance company. We have our own development department made-up of almost 150 people plus some providers (outsourcing and custom made apps pretty much). In our company my team have made what we call non-functional logic libraries. That is, software libraries to handle things that are horizontal to all the development teams in our department, e.g. Security, Webservices, Logging, Messaging and so on. Most or these tools are either made from scratch or adaptation of a de-facto standard. For example our logger is an appender based on Log4J that also saves the logging messages into a DB. We also define what libraries to use in the application, for example which framework for webservices to use. We use pretty much JavaEE and Oracle AS in all our organization (with some Websphere Application servers).
Much of these projects have their architecture documented (use cases, UML diagrams, etc) and generally the generated documentation are available.
Now what we have seen is that for users sometimes is difficult to use the the libraries we provide and the are constantly asking question or they simply don't use them.
So we are planning to generate a more friendly documentation for them, so my question is:
What are the best practices or the checklist that software documentation should have?
Something comes to my mind:
API Reference guide
Quick start Tutorial
API Generated Documentation.
Must be searchable
Web Access
What else should it have? Also, based in your experience what is the best way to maintain (keep it up-to-date) and publish this type of documentation?
Keep your documentation in version control too.
Make sure on every page it has a version number so you know where your user has been reading from.
Get a CI server going and push documentation to a LIVE documentation site upon updates.
Do documentation reviews like you would code reviews.
Dog-food it :)
Kindness,
Dan