You might consider using a config file of some sort to store the username/password information. Then if, for whatever reason, you decide to put the module on CPAN, make sure that:
  1. Your own personal config file does not go into the distro
  2. There are clear instructions in the installation docs for the module that make it explicitly obvious to the people who install it that they must provide their own username/password info in the config file in order to run tests.

But then, I think there's still a dilemma. Supposing I wanted to install your module in order to access my own personal bank account (assuming the unlikely possibility that I have an account at the same bank as you, so that everything should work as expected), I don't know how willing I would be to run tests to make sure the module works as intended, using my own bank account as the test bed.

Somehow, that would seem like a bad idea, quite apart from the notion that my account information might be different enough from yours that it might be hard to anticipate what sorts of values and results should be expected.

An ideal solution, similar to what DBI does, would be if the bank would support a "test user" account with stable and reliable data that would always return the same values for the test conditions (unless the tests were failing, of course). But I assume the likelihood of any bank doing that for the sake of a CPAN contributer is nil. So much for the ideal solution.

All things considered, I don't think you can arrive at the appropriate "level of abstraction" to make this sort of thing viable as a CPAN package. You'll have enough to worry about just making sure it continues to work as intended for your own personal needs (as the bank "improves" its presentation strategies), so let that be sufficient.

(You asked for opinions; that's mine.)


In reply to Re: Testing with sensitive information by graff
in thread Testing with sensitive information by rpanman

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.