CSC/ECE 517 Spring 2019 - E1922. Write tests for assessment360 controller.rb: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
Line 21: Line 21:
*Achieve as high branch coverage as you can.
*Achieve as high branch coverage as you can.
====Our work====
====Our work====
The code we created can be found below. We have also linked the video of our tests running with coverage to showcase the work we have done.
*[https://github.com/expertiza/expertiza/pull/1366 Pull request]
*[https://github.com/expertiza/expertiza/pull/1366 Pull request]
*[https://github.com/jasminewang0/expertiza/tree/beta Our repository on beta branch]
*[https://github.com/jasminewang0/expertiza/tree/beta Our repository on beta branch]
*Video of tests running
*Video of tests running

Revision as of 19:22, 24 March 2019

Introduction

Background

Expertiza

Expertiza is a web application where students can submit and peer-review learning objects (articles, code, web sites, etc). It is used in select courses at NC State and by professors at several other colleges and universities. (https://github.com/expertiza/expertiza)

RSpec

RSpec is a 'Domain Specific Language' (DSL) testing tool written in Ruby to test Ruby code. It is a behavior-driven development (BDD) framework which is extensively used in the production applications. The basic idea behind this concept is that of Test Driven Development (TDD) where the tests are written first and the development is based on writing just enough code that will fulfill those tests followed by refactoring. It contains its own mocking framework that is fully integrated into the framework based upon JMock. The simplicity in the RSpec syntax makes it one of the popular testing tools for Ruby applications. The RSpec tool can be used by installing the rspec gem which consists of 3 other gems namely rspec-core, rspec-expectation and rspec-mock. (https://en.wikipedia.org/wiki/RSpec)

Team

Zhewei Hu (zhu6) (mentor)

  • Jasmine Wang (jfwang2)
  • Louis Le (lle3)

Project

Task

Problem statement

There are few tests for assessment360_controller.rb.

Overall tasks

  • Write RSpec integration tests to make the statement coverage above 90%.
  • Cover as many edge cases as you can.
  • Achieve as high branch coverage as you can.

Our work

The code we created can be found below. We have also linked the video of our tests running with coverage to showcase the work we have done.