ApprovalTests.Java icon indicating copy to clipboard operation
ApprovalTests.Java copied to clipboard

Missing Documentation Pages

Open ScottBob opened this issue 2 years ago • 6 comments

Is there a documentation page that you would like to see?

Add the title of the page below in a comment. Also, please preference it with one of the following four categories:

  1. Tutorial - Step-by-step guide to get started
  2. How To - Recipe to solve a specific problem
  3. Explanation - Theory and history around ApprovalTests
  4. Reference - Description, lists, and statistics of ApprovalTests api

ScottBob avatar Jan 05 '23 21:01 ScottBob

1 or 2 https://github.com/approvals/ApprovalTests.Java/blob/master/approvaltests/docs/Reporters.md#class-and-method-level

I found the documentation about the PackageSettings a little lacking. Specifically I had a hard time figuring out the best configuration for use with IntelliJ running my tests. The differences between the various reporters were unclear and I had to try a bunch.

Separately, using PascalCase for variable names seems unusual vs camelCase or even better UPPER_SNAKE_CASE.

For the record, we eventually found:

public class PackageSettings {
  public static EnvironmentAwareReporter FrontloadedReporter = new JunitReporter();
  public static ApprovalFailureReporter UseReporter = new QuietReporter();
  public static String UseApprovalSubdirectory = "golden_files";
}

Kurru avatar Jan 24 '23 04:01 Kurru

https://github.com/approvals/ApprovalTests.Java/blob/master/approvaltests/docs/README.md

"Main concepts for ApprovalTests" This section doesnt provide links to "writers" or "namers" which are otherwise mysterious for the user. Ideally there would be a link to explain these further and provide examples or customization options

Kurru avatar Jan 24 '23 07:01 Kurru

@Kurru

I found the documentation about the PackageSettings a little lacking.

We created this page: https://github.com/approvals/ApprovalTests.Java/blob/master/approvaltests/docs/explanations/BestConfigurationPractices.md

Does it help?

ScottBob avatar Feb 09 '23 22:02 ScottBob

@ScottBob while that does help explain the order of reporters (and that you could have class or method level reporters) my comment was more about how I learned about how I needed to configure ApprovalTest to make it do what I wanted.

It took rather a long time to find that PackageSettings was the way to configure multiple test files in 1 consistent way.

Some difficulties I had after I figured out that PackageSettings was a thing included:

  • what are the common parameters available in PackageSettings (though seems more accessible now)
  • what is a "FrontloadedReporter" vs a "UseReporter" (still have no idea)
  • why do I need a reporter? (to display the diffs it seems?)
  • What the benefits between the reporters? (are they mostly just different diff tool integrations)
  • I also dont know why someone would want to change a reporter for a class or a method. What are the common use-cases for this feature?

Kurru avatar Feb 10 '23 02:02 Kurru

@Kurru We made a page about FrontLoadedReporters. Would appreciate feedback.

ScottBob avatar Feb 16 '23 22:02 ScottBob

@Kurru We made a page about the benefits of different reporters. Would appreciate feedback.

ScottBob avatar Feb 16 '23 22:02 ScottBob