When a language isn't strongly typed, I often test unexpected but possible types -- for example: Numbers or Strings instead of Dates or Booleans. 

Other favorites: 

  • ""
  • "null"
  • "undefined" 
  • Quotes, comments, and other injection attack patterns. 

As Jon Willeke suggested, I also use random data when possible (apart from the -1, 0, 1 defaults).  The %Library.PopulateUtils class can be helpful for generating other preformatted random information.