Skip to end of metadata
Go to start of metadata

Decapod genpdf Test Plan

Environments

  • OS: Ubuntu 10.04

General QA Guidelines

General Use

  • Does the tool behave the way that you would expect
  • Are you surprised by anything
  • Does something take longer than you would expect
  • When the tool does something unexpected or takes too long to do something, does the tool provide appropriate feedback
On This Page

QA Tests

Protocol
Perform the following tests using each browser/system environment

Report issues at: http://issues.fluidproject.org/secure/Dashboard.jspa

Please search for issues before reporting them, so as to limit the number of duplicate entries.

Decapod Jira Filter



Unit Tests

Protocol

Currently, no unit tests available

Task Oriented Functional Tests

Description
Ensures that the component is able to handle expected input.

Protocol
Perform these tasks on the command line.
Ensure that neither the book directory nor the output path exist before running the command.

Running:

  • if decapod is not installed, run python setup.py before trying to run the commands

Test 1: Display the help text

  • Procedure
    1. From the command line run:
      decapod-genpdf.py -h
      
  • Results
    • The help documentation should be displayed. It should contain a list of the command line arguments and a description for each

Test 2: Generate a pdf from a single file

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in and have the ocr'd text underplayed
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Stop Test
    • Delete the generated files and directories

Test 3: Generate a pdf from multiple files

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "~/path/to/image/file" and etc. with the correct paths
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -l ~/path/to/image/file ~/path/to/image/file2 ...
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour images of the image files passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image files passed in and have the ocr'd text underplayed
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image files passed in, all the text should be selectable
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image files passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Stop Test
    • Delete the generated files and directories

Test 4: Generate a pdf with output width specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "width" with a size in centimetres 
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -w width -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in
    • The pdf should have a width equal to the value specified for the -w flag and a height of 29.7cm
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in and have the ocr'd text underplayed
    • The pdf should have a width equal to the value specified for the -w flag and a height of 29.7cm
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width equal to the value specified for the -w flag and a height of 29.7cm
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width equal to the value specified for the -w flag and a height of 29.7cm
  • Stop Test
    • Delete the generated files and directories

Test 5: Generate a pdf with output height specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "height" with a size in centimetres 
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -h height -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in
    • The pdf should have a width of 21cm and a height equal to the value specified for the -h flag
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in and have the ocr'd text underplayed
    • The pdf should have a width of 21cm and a height equal to the value specified for the -h flag
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width of 21cm and a height equal to the value specified for the -h flag
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width of 21cm and a height equal to the value specified for the -h flag
  • Stop Test
    • Delete the generated files and directories

Test 6: Generate a pdf with output width and height specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "width" with a size in centimetres 
      # replace "height" with a size in centimetres
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -w width -h height -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI, 24-bit colour image of the image file passed in and have the ocr'd text underplayed
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Stop Test
    • Delete the generated files and directories

Test 7: Generate a pdf with dpi specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "dpiNumber" with an integer greater than 0
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -dpi dpiNumber -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 24-bit colour image of the image file passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
    • The pdf should have the specified dpi
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 24-bit colour image of the image file passed in and have the ocr'd text underplayed
    • The pdf should have a width of 21cm and a height of 29.7cm
    • The pdf should have the specified dpi
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Stop Test
    • Delete the generated files and directories

Test 8: Generate a pdf with the colour flag specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "imageColour" with one of the following [color, colour, grey, gray]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -c imageColour -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI image of the image file passed in
    • The colour of the image should match the passed in value
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI image of the image file passed in and have the ocr'd text underplayed
    • The colour of the image should match the passed in value
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Stop Test
    • Delete the generated files and directories

Test 9: Generate a pdf with a specified bit depth

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "bitDepth" with a number from [24, 16, 8, 1]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -bit bitDepth -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI image of the image file passed in
    • The bit depth of the image should match the value passed in
    • The image should be colour, unless a bit depth of 1 is passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a 200 DPI image of the image file passed in
    • The bit depth of the image should match the value passed in
    • The image should be colour, unless a bit depth of 1 is passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width of 21cm and a height of 29.7cm
  • Stop Test
    • Delete the generated files and directories

Boundary Tests

________________________________________________________

Description
Ensures proper functionality at the input limits 

Protocol
Perform these tasks on the command line.
Ensure that neither the book directory nor the output path exist before running the command.

Running:

  • if decapod is not installed, run python setup.py before trying to run the commands

Test 1: Generate a pdf with no arguments

  • Procedure
    1. From the command line run:
      decapod-genpdf.py
      
  • Results
    • The help documentation should be displayed. It should contain a list of the command line arguments and a description for each

Test 2: Generate a pdf with all the options set

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "width" with a size in centimetres 
      # replace "height" with a size in centimetres
      # replace "dpiNumber" with an integer greater than 0
      # replace "imageColour" with one of the following [color, colour, grey, gray]
      # replace "bitDepth" with a number from [24, 16, 8, 1]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -w width -h height -dpi dpiNumber -c imageColour -bit bitDepth -l ~/path/to/image/file
      
  • Type 1 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain an image of the image file passed in
    • The colour of the image should match the passed in value
    • The bit depth of the image should match the value passed in
    • The pdf should have the specified dpi
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Type 2 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain an image of the image file passed in and have the ocr'd text underplayed
    • test.pdf should contain an image of the image file passed in
    • The colour of the image should match the passed in value
    • The bit depth of the image should match the value passed in
    • The pdf should have the specified dpi
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Type 3 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf file should be generated
    • test.pdf should contain a computer traced representation of the image file passed in, all the text should be selectable
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Type 4 Results
    • The test.json file should be created and updated with the progress as the export is generated
    • The bookDir directory should be created containing the working files
    • After the export has finished the test.pdf files should be generated
    • test.pdf should contain selectable text in a matching font to the image file passed in
    • The pdf should have a width and height equal to the values specified for the -w and -h flags respectively
  • Stop Test
    • Delete the generated files and directories

Test-to-Fail

________________________________________________________

Description
Tests which should cause errors or not be accepted as input 

Protocol
Perform these tasks on the following site.
Perform these tasks a second time using Orca.

Decapod Server:

Test 1: Generate a pdf without input files

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf
      
  • Results
    • An error message showing that the -l parameter is missing

Test 2: Generate a pdf without a book directory specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -p parameter is missing

Test 3: Generate a pdf with type number out of bounds

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number other than [1-4]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -bit bitDepth -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -t parameter is out of bounds

Test 4: Generate a pdf with width out of bounds

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "width" with a size in centimetres greater than 30 or less than 1
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -w width -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -w parameter is out of bounds

Test 5: Generate a pdf with height out of bounds

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "height" with a size in centimetres greater than 30 or less than 1
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -h height -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -h parameter is out of bounds

Test 6: Generate a pdf with dpi out of bounds

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "dpiNumber" with an integer greater than 600 or less than 1
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -dpi dpiNumber -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -dpi parameter is out of bounds

Test 7: Generate a pdf with an invalid colour option specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "imageColour" with a value other than one of the following [color, colour, grey, gray]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -c imageColour -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -c parameter is invalid

Test 8: Generate a pdf with an invalid bit depth specified

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "bitDepth" with a value other than [24, 16, 8, 1]
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/Desktop/test.pdf -bit bitDepth -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -bit parameter is invalid

Test 9: Book directory already exists

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "~/path/to/existing/dir" with the path to an existing directory
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/path/to/existing/dir -p ~/Desktop/test.pdf -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -d book directory already exists

Test 10: PDF already exists

  • Procedure
    1. From the command line run:
      # replace "typeNumber" with a number from [1-4]
      # replace "~/path/to/existing.pdf" with the path to an existing pdf
      # replace "~/path/to/image/file" with the correct path
      decapod-genpdf.py -t typeNumber -d ~/Desktop/bookDir -p ~/path/to/existing.pdf -l ~/path/to/image/file
      
  • Results
    • An error message showing that the -p PDF already exists
  • No labels